簡體   English   中英

.show()不顯示!

[英].show() doesn't show!

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script type="text/javascript">
$(document).ready({
$('#sh').click(function(){
$('#container').show();

});
});
</script>
<style type="text/css">
#container {
width:350px;
height:350px;
border:1px solid #000000;
display:none;
}

</style>
</head>
<body>
<div id="container">
<p>paragraph 1</p>
</div>

<div>
<a href="#" id="sh">show</a>

</div>
</body>
</html>

點擊鏈接根本不會觸發.show()! 我究竟做錯了什么?? 更新:我試過$(document).ready({...這沒有幫助!

請注意,只有在文檔加載完成后才加載腳本:

$(function(){
  /* Scripts here will run only
     after the document has loaded */
});

另外,在使用鏈接觸發操作時,請確保防止鏈接的默認行為

$(function(){
  $("#sh").click(function(e){
    e.preventDefault();
    $("#container").show();
  });
});

經過這些更改,代碼可以按預期工作: http : //jsfiddle.net/apsje/

在這之間添加您的jQuery代碼

$(document).ready(function() {

...

});

用這個:

因為如果您在真正的HTML之前調用腳本,那么您所引用的元素尚不存在。

$(document).ready( function() {
    $('#sh').click(function(){
    $('#container').show();
})

通過在$(document)上使用ready事件,可以確保DOM已完全加載並可以進行交互。

綁定點擊時,瀏覽器尚未呈現#sh

請嘗試以下操作:

$(document).ready(function() {
  $('#sh').click(function(){
    $('#container').show();

  });
});

加載文檔后,它將綁定單擊。

您的代碼在DOM中存在元素之前就已運行。 您的腳本塊應如下所示:

<script type="text/javascript">
  $( function()
  {
    $( '#sh' ).click( function()
    {
      $( '#container' ).show();
    } );
  } );
</script>

或將腳本放在</body>之前

$(document).ready(function(){
    $('#sh').click(function(){
        $('#container').show();

    });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM