javascript - jQuery UI : Superfish WindowShopper steals . 对话框(),导致异常对象[对象对象]没有方法 'dialog'

标签 javascript jquery jquery-ui

我网站的一些访问者加载了很多脚本,但我的网站没有链接到这些脚本。这可能是由于 Superfish WindowShopper 软件造成的。 这个库似乎也加载了 jQuery,因此我的页面为某些访问者加载了多个版本的 jQuery。

这会导致异常: 对象 [object Object] 没有方法“dialog”

如何防止 Superfish(或其他广告软件)窃取我的 jQuery UI .dialog?

一些无意链接的脚本:

https://appnext-a.akamaihd.net/source-ds.js
//www.superfish.com/ws/sf_main.jsp?dlsource=pcom&userId=4709955453116160291&CTID=p0

等等。脚本因浏览器而异。 Akamaihd.com 的第一个是修改后的 jQuery。也许还有更多。多个 jQueries 使 .dialog 消失 ( Uncaught TypeError: Object [object Object] has no method 'dialog' )。

fiddle :http://jsfiddle.net/fybJ3/ Chrome 和 Firefox 中出现问题。 IE 显示对话框没有问题。

我当前的解决方法:发生此异常时显示老式的“警报”。

我应该做什么?

  • 能否修复 jQuery UI,以便在加载多个版本的 jQuery 时显示对话框?
  • 我应该为对话框选择不同的库吗?
  • 或者???

最佳答案

最好的选择是使用 noConflict() 隔离已知的 jQuery 实例。

发生的情况是新版本将覆盖第一个版本,因此绑定(bind)到第一个版本的任何插件都会被删除。

<强> See noConflict() API docs

关于javascript - jQuery UI : Superfish WindowShopper steals . 对话框(),导致异常对象[对象对象]没有方法 'dialog',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24045676/

相关文章:

jquery-ui - jQuery UI 可使用 React.js 进行排序

javascript - 更正 jQuery 以从选择选项中读取

javascript - 操作 jquery 对话框的 div 内容

javascript - 如何开始编写像 mohiomap 这样的东西?

javascript - 我的元素上的哪个 jQuery 附加事件首先触发?

javascript - jquery hover 不调用页面加载后获取类的元素

javascript - 在 JQuery 中选择下一个不匹配的元素

jQuery UI 对话框 : a huge DIV on the background in IE 8

javascript - 如何响应嵌入式 Tableau javascript api 中的 slider ?

jquery - 我的网站的价格范围 slider