核心提示:jquerytoggle显示隐藏的时候需要点两下的解决方法,jquery的toggle()函数用于js方法间的切换,用toggle方法处理一些展示隐藏效果很方便.但有时会有些问题.接下来看个状况.以下...
jquerytoggle显示隐藏的时候需要点两下的解决方法,jquery的toggle()函数用于js方法间的切换,用toggle方法处理一些展示隐藏效果很方便.但有时会有些问题.接下来看个状况.
但用ajax动态加载的时候就会出现问题,显示隐藏的时候需要点两下才能触发(我多次来回点击时就出现点两次才触发),这时可以用另一个方法来代替,就是click,当点击的时候判断id为p2的元素是否隐藏,如果隐藏则显示,如果显示则隐藏.
以下用toggle方法处理点id为p2的元素的时候显示id为p2的元素,再点击一下则隐藏的例子:
代码如下:
$('#p1').toggle( function() { $('#p2').show(); }, function() { $('#p2').hide(); }, );
但用ajax动态加载的时候就会出现问题,显示隐藏的时候需要点两下才能触发(我多次来回点击时就出现点两次才触发),这时可以用另一个方法来代替,就是click,当点击的时候判断id为p2的元素是否隐藏,如果隐藏则显示,如果显示则隐藏.
代码如下: $('#p1').live('click', function () //因为通过ajax加载后的dom,这边用live { var p2 = $('#p2'); if (p2.is(':visible')) //如果id为p2的区域显示 { p2.hide(); //隐藏 } else { p2.show(); } });
这样达到同样的切换的效果.解决toggle()函数点击第一下为什么不起作用.
反正我改了之后问题就解决了