房地产网站模板库关键词免费下载
jquery toggle
简而言之,您可以将Live和Toggle一起使用,但不必编码最佳实践。 jQuery .Live()和jQuery .Toggle()都会自动为元素创建自己的绑定事件。 当它们一起使用时,这会引起问题,因为您需要单击两次按钮才能使Toggle起作用。
解决此问题的一种方法是将Live('click')事件与Toggle事件一起使用,可以将.Trigger('click')命令添加到函数调用的末尾,如下所示:
// Add sort functions on dynamic elements inserted into DOM
$('.sort').live('click',JQUERY4U.sortClickListener);[code lang="js"]
//function inside JQUERY4U namespace
sortClickListener: function(){// Find second class namevar button = $(this).attr('class').split(' ');// Sort table$(this).toggle(function() {$('.item').tsort('.'+button[1],{order:'desc'});}, function() {$('.item').tsort('.'+button[1]);}).trigger('click'); /*force the button to work with 1 click*/
},
另一种方法是使用.Data方法,但这将是过大的手段,也是解决难题的漫长方法。
$(".reply").live('click', function () {var toggled = $(this).data('toggled');$(this).data('toggled', !toggled);if (!toggled) {x1();}else {x2();}
});
翻译自: https://www.sitepoint.com/jquery-toggle-live-bind/
jquery toggle