javascript中的Jquery.on()本机函数
Jquery .on() native function in javascript
我已经创建了使用jquery最新版本1.11.1的小部件。当我将我的小部件添加到第三方网站时。
第三方网站有较低版本的jquery,例如1.5(可以是任何版本)。第三方网站jquery没有最新的功能。
例如最新版本功能
jQuery(document).on("click", function(e) {
...
});
所以我得到的错误函数是未定义的。如何解决此类问题。
或者我是不是用错误的方式创建了依赖jquery的小部件?如果有人知道如何实现不依赖第三方库的java脚本小部件,比如jquery的不同版本。
如果您正在使用事件委派,则此答案仅适用于
在jQuery1.5中,您有.delete()方法,您可以使用
$( "table" ).delegate( "td", "click", function() {
$( this ).toggleClass( "chosen" );
});
不要使用.live(),因为它在版本>=1.9 中被删除
on方法在1.5版中未知
您应该使用以下语法:
jQuery(document).click(function(e) {
...
});
jQuery(document).click(function(e) {
此处,因为没有委派
对于动态HTML,使用live
事件,因为它在旧的jquery版本中工作,并且您必须使用不推荐使用的语法,因为它使用旧的jquery。
如果必须动态处理数据,请使用live()
.on()
在版本1.6+中添加。对于以前的版本,您需要使用.live()
由于您没有委派事件,您可以简单地使用.click()
附加点击事件:
jQuery(document).click(function(e) {
...
});
我认为没有任何直接/动态的方法来解决您的问题。即使您使用"点击"功能解决了问题。您可能会遇到另一个函数的问题,该函数在较低版本的JQuery中不受支持,或者具有不同的语法/行为。
例如,JQuery的较低版本可能不支持像"fadeOut(1000)"这样的少数动画(这只是一个例子。您需要检查是否支持这些类型的API。)
所以实际上,你可能只需要做跟踪和错误。使用所有可用的JQuery版本测试您的JQuery小部件/插件。
-
您可以找到部署小部件的网站的Jquery版本。看看这是否有助于获得版本。https://api.jquery.com/jquery-2/
-
根据版本的不同,您可以使用适当的受支持的API,例如,1.5版的live()和更高版本的and.click()。
当一切正常时,你很乐意去。
- javascript函数访问ios本机功能
- 如何在从客户端接收数据时从本机方法触发javascript函数?
- 将回调/函数从本机发送到javascript
- 检测未绑定的本机函数,如“Array.push”
- 调用本机浏览器函数,即使它已被覆盖
- Array.insert函数错误,因为Object函数Array(){〔本机代码〕}没有方法'插入'
- 如何通过Javascript调用Phonegap中的本机函数
- javascript中的Jquery.on()本机函数
- 重写IE11中的本机js函数
- TypeError:对象函数Object(){〔本机代码〕}没有方法'方法'
- 在 Worklight Init 之后从本机执行 JavaScript 函数
- JavascriptCore:从本机代码执行JavaScript定义的回调函数
- 反应本机函数不返回
- 我在哪里可以找到javascript本机函数源代码
- 有没有办法在javascript中克隆本机函数,如window.alert或document.write
- 扩展本机函数以在函数调用时运行代码
- 事件处理程序中无法识别本机函数[.sort()]
- 本机$函数应该是什么?
- Chromium Embedded Framework中本机函数的后台处理
- 是否有任何本机函数可以将 json 转换为 url 参数