0

私の Web アプリケーションでは、javascript を使用して HTML 要素のスタイルを変更しています。

以下のコードを参照してください。

function layout() {
    if(document.getElementById('sh1').getAttribute('src') == "abc.png") {
        document.getElementById("sh1").style.display="none";
    } else {
        document.getElementById("sh1").style.display="block";
    }
}

HTMLは次のとおりです。

<img id="sh1" src="abc.png" />

img 要素のスタイルが display:none; の場合 次に要素の下

<p id="Text1">Name<br />description</p>

スタイルも display:none; に変更する必要があります。img 要素のスタイルが display:block; の場合 上記の Elements スタイルも display:block; に変更する必要があります。自動的。

これはどのように達成できますか?

4

3 に答える 3

1

関数にも他の要素を追加します。このようなもの:

function layout(){
    if(document.getElementById('sh1').getAttribute('src') == "abc.png"){
        document.getElementById("sh1").style.display="none";
        document.getElementById("Text1").style.display="none";
    } else {
        document.getElementById("sh1").style.display="block";
        document.getElementById("Text1").style.display="Block";
    }
}

または、両方をコンテナーに入れると、コンテナー全体に対して 1 つの操作を実行できます =)

于 2013-05-14T13:12:17.793 に答える
0

私があなたを正しく理解していれば、あなたはこの後

function layout(){
  if(document.getElementById('sh1').getAttribute('src') == "abc.png"){
    document.getElementById("sh1").style.display="none";
    document.getElementById("Text1").style.display = "none"; //Hide the description
  } else {
    document.getElementById("sh1").style.display="block";
    document.getElementById("Text1").style.display="block"; //Show the description
  }
}

この関数がこの画像と説明に固有のものである場合、これはうまく機能するはずです。明らかに、このロジックを適用する画像がたくさんある場合は、汎用関数を使用してこれを達成するはるかに効率的な方法があります。

于 2013-05-14T13:12:40.127 に答える