大佬教程收集整理的这篇文章主要介绍了jquery – 在click事件中使用stopPropagation,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
<div class="element logout"> <div class="subTop"> <a href="home.jsp" onclick="return confirm('Do you want to logout?');">Log Out</a> </div> </div>
我使用以下代码来处理注销.
jQuery(".element").click(function(E){ var tmpHref=jQuery(this).not('.logout').find(".subTop>a").attr('href'); if(tmpHref!=undefined&&tmpHref!=""&&tmpHref!=null) { window.LOCATIOn.href=tmpHref; } else { jQuery(this).find(".subTop>a").click(); } });
但我的问题是确认事件一次又一次地触发.我认为这是因为传播均匀.经过我的研究,我发现我可以使用07. post后的e.stopPropagation().但我无法弄清楚如何在这里使用它.
<div class="element logout"> <div class="subTop"> <a href="home.jsp" data-confirmmsg="Do you want to logout?" >Log Out</a> </div> </div>
和JavaScript到
jQuery(".subTop>a").click(function(E){ e.preventDefault(); }); jQuery(".element").click(function(E){ var self = jQuery(this),islogout = self.hasClass('logout') anchor = self.find(".subTop>a") href = islogout ? "logout.jsp" : anchor.attr('href'); if(!islogout || (islogout && confirm(anchor.data('confirmmsg')))) { window.LOCATIOn.href=href; } });
Javascript的第一部分只是禁用a-tag作为链接.除了将事件传播到外部元素之外没有任何事情发生(如果点击实际上在链接上,我们仍然要让`div-tag处理它). JavaScript的第二部分首先检查注销类是否存在,然后相应地设置href.最后,如果用户被发送到’logout.jsp’,将显示确认框并测试返回值.
以上是大佬教程为你收集整理的jquery – 在click事件中使用stopPropagation全部内容,希望文章能够帮你解决jquery – 在click事件中使用stopPropagation所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。