0

1956 年と 1999 年に撮影されたかに星雲の 2 枚の写真を切り替える Web ページを作成しました。このページは、Chrome と Firefox では期待どおりに機能しますが、IE10 では機能しません。Chrome と Firefox で動作させるためにコードをハックする必要があったため、問題が IE10 にあり、私のコードにあるのかどうかはわかりません。

IE10 で失敗し、Chrome と Firefox で動作する JavaScript スニペットを次に示します。

if(curHelp=="Show Text"){
    curHelp = "Hide Text";
    d3s=d3.selectAll("p");
    d3s.attr("hidden",false);
    d3s[0][0].hidden=false; // d3s.attr("hidden",false) doesn't work.
    d3s[0][1].hidden=false; // It sets  all "hidden" attribute for paragraphs to true.
    d3s[0][2].hidden=false; // I hacked in these 4 lines just to get the page to work.
    d3s[0][3].hidden=false; 
}else{
    curHelp = "Show Text";
    d3s=d3.selectAll("p");
    d3s.attr("hidden",true);  // this works but maybe because it's a bug?
}

行 "d3s.attr("hidden",false) は、すべての段落の非表示属性を true に設定します。

バグは私のコードにあると思いますが、段落を非表示にする場合は .attr 関数呼び出しが意図したとおりに機能しますが、段落を表示する場合は失敗するため、何が間違っているのかわかりません。

ここに私が取り組んでいるページへのリンクがあります。

4

1 に答える 1

0

代わりにこれを試してください:

d3.selectAll("p").style("display", "none") 

可視性は CSS プロパティです。.attrの代わりに .style を使用して設定する必要があります

于 2013-09-01T20:50:38.163 に答える