0
<script>  
function showhide() {  
document.getElementById('someimage').style.visibility="hidden";   
        }  
</script>  

現時点では、画像を非表示にすることはできますが、再度表示する方法はありません。javascript を使用してボタンをクリックしたときに画像を非表示にしてから表示できるようにするにはどうすればよいですか?

ボタンは次のとおりです。

<body>  
<input type="button" onclick="showhide()" />   
</body>  
4

3 に答える 3

1

現在の状態を確認し、それに応じて行動するだけです。

function showhide() {
    var img = document.getElementById('someimage');
    if (img.style.visibility === 'hidden') {
        // Currently hidden, make it visible
        img.style.visibility = "visible";
    } else {
        // Currently visible, make it hidden
        img.style.visibility = "hidden";
    }
}

そして、jQueryについて提案しているすべての人への簡単なメモ。

このような単純なものの場合、大きなDOM操作ライブラリを含める必要はありません。より複雑なアプリケーションでこのような多くのDOM操作を行っている場合は、jQueryを含める方が理にかなっています。

ただし、jQueryを使用するときに、内部でjQueryが何をしているかを理解することも重要です。

于 2013-02-25T21:41:28.770 に答える
0

jQueryの素晴らしさ-http://jsfiddle.net/PbG3t/

$(function() {
    $('#button').click(function() {
        $('#someimage').toggle();
    });
 });
于 2013-02-25T21:41:24.543 に答える
0

jQuery を使用している場合は、( .toggle ) メソッドを使用して、物事を大幅に簡素化できます。

$('#someimage').toggle();

手作りのソリューションに固執したい場合は、要素の可視性を可視に戻す決定的なビットが実際にはコードに欠けていると思います。試す:

<script>  
  function showhide() {
      var element = document.getElementById('someimage');
      element.style.visibility = element.style.visibility == 'visible' 
          ? 'hidden' 
          : 'visible';   
  }  
</script>

乾杯、アレックス

于 2013-02-25T21:44:45.500 に答える