关于两个jQuery(js)特效冲突的bug的解决办法

(编辑:jimmy 日期: 2024/10/3 浏览:2)

Problem:

使用jquery,json做一个资源下载的应用,其中用到paginate.js和JSON数据的分页效果,以及jquery.DOMWindow.js的弹窗效果。

但是出现以下bug:

单击“上/下一页,首/末页”后,弹窗事件失效;

Analysis:

对于这个Bug,在paginate.js中设计的上/下一页,首/末页按钮属性是设置了href=”javascript:(void)”,google到关于这个属性的解释:

“javascript:void(0); in a link is usually a placeholderfor an onclick action that is done by clicking the link.”

在写 AJAX 的时候很常应用到类似的语法,好处是连结的样式还会存在,然则不会导向任何处所,改为执行 onclick 事务中的 function。在我们在做页面无刷新时用的比较多,一般是Ajax的使用上。

所以这个bug的原因可以理解为每次单击此按钮后,就链接到void,而让加载DOMWindow的js函数失效了。

所以可以通过把void改成页面中加载DOMWindow的js函数来解决这个bug。

Solution:

把每个翻页按钮中链接的javascript:(void)改成加载DOMWindow的js函数。即:javascript:DOMWindow(),这样在每一次翻页的过程中都会有加载到DOMWindow的js函数。

类似的这种技巧在协调多个javascript/jquery事件的情况下也常常用到。

以上这篇关于两个jQuery(js)特效冲突的bug的解决办法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。