Uncaught TypeError: s.elem.on is not a function

来源:互联网 发布:sql注入式攻击 编辑:程序博客网 时间:2024/06/08 10:26

下图是 控制台 JS 报错截图,在使用 JQuery 插件时报的错
JS 报错

报错原因

s.elem.on is not a function 这一句已经说明了 报错原因。 找不到 on 这个方法,导致 无法识别 on 方法的原因 就是 JQuery 的版本

我们在使用 JQuery 插件 或者 单纯使用JQuery 的on 语法绑定事件的时候,都可能导致出现这个问题。

JQuery 1.8 升级 到 JQuery 1.9 时, JQuery 1.9 移除了 live绑定方法 绑定方法,换成了 使用
on 进行事件绑定。

像 在 使用 JQuery pnotify.js 这个插件的时候,就报了这个错,原因就是 : 我用的插件依赖的是 高版本的 JQuery ,使用了 on 进行事件绑定, 而低版本的 JQuery 不支持 on 方法,所以报了这个错误。

解决方法

  1. 直接将 我们 JQuery 版本进行升级 即可。

  2. 其实降低插件的版本也是可以的,但是这可能会引发其他问题(不推荐)

参考博文

http://www.cnblogs.com/xiaodoublog/archive/2013/01/19/2867673.html