首页 新闻 会员 周边 捐助

关于jquery 的一点不解

0
悬赏园豆:10 [已解决问题] 解决于 2012-03-02 16:55

最近才开始学习jq,发现一个问题,下面是个简单的示例,可以成功完成效果,但是当页面加载完成,第一次点击按钮的时候,是没有任何效果的,需要从第二次点击开始产生效果,非常疑惑,望指点。

 

<script type="text/javascript">

$(document).ready(function(){

  $("#Test1").toggle(function(){

      $("#testdiv").hide('slow');
  },function(){
      $("#testdiv").show('fast');
  });

});
</script>

============================

<input type="button" value="显示" id="Test1" />


<div id="testdiv" style="display:none;">
asdfadfsafasdfasd
fasdf
asd
fasdfasdfasdfasdf
</div>

东宫有喜的主页 东宫有喜 | 初学一级 | 园豆:3
提问于:2012-03-02 09:43
< >
分享
最佳答案
1

将toggle中的$("#testdiv").hide('slow');与$("#testdiv").hide('slow');换一下位置就好了。你的textdiv默认display为      none,toggle中的第一个函数要用show才能显示出来;如果txtdiv默认display为block,toggle中的第一个函数就用hide就没问题了。。。

收获园豆:10
KivenRo | 小虾三级 |园豆:1734 | 2012-03-02 12:41
其他回答(2)
0

这个toggle没用过还是手动if else 好了

麻将我会 | 园豆:24 (初学一级) | 2012-03-02 09:59
1

试试下面的代码。

<style type="text/css">
#testdiv{display: none;}
</style>

<script type="text/javascript">
$(document).ready(function() {
   $("#Test1").click(function(event) {
     $("#testdiv").toggle();
   });
});
</script>

 

============================

 

<input type="button" value="显示" id="Test1" />
<div id="testdiv">
asdfadfsafasdfasd fasdf asd fasdfasdfasdfasdf
</div>

Tomzhou | 园豆:205 (菜鸟二级) | 2012-03-02 11:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册