我有一个无法解决的问题.
这段代码非常适合我.
// click row opens message, unless you click delete
$('.delete_message-link-js').live('click', function(e) {
e.preventDefault();
});
$('.item-message').live('click', function(e){ //.item-message - tr lass
window.location = $(this).find(".show_message-link").attr("href");
});
Run Code Online (Sandbox Code Playgroud)
但是,当我将.live()更改为.on()时
// click row opens message, unless you click delete
$('.delete_message-link-js').on('click', false );
$('.item-message').on('click', function(e){
window.location = $(this).find(".show_message-link").attr("href");
});
Run Code Online (Sandbox Code Playgroud)
我有一个Firefox的错误.当我点击表格行中的.delete_message-link-js链接时,我收到一个错误
提示中止用户
抛出Components.Exception ... by user",Cr.NS_ERROR_NOT_AVAILABLE);
但代码适用于Safari.
我做错了什么?
谢谢,抱歉我的英语
阅读文档:
从那里我们可以看到on相当于:
$('.delete_message-link-js').live('click', function(e) {
e.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)
是:
$( document ).on( "click", ".delete_message-link-js", function(e){
e.preventDefault();
});
Run Code Online (Sandbox Code Playgroud)
等等.
您还可以阅读源代码以了解如何live转换为on:
live: function( types, data, fn ) {
jQuery( this.context ).on( types, this.selector, data, fn );
return this;
}
Run Code Online (Sandbox Code Playgroud)
this.context是document(默认上下文,因为您没有给出任何上下文),并且this.selector是'.delete_message-link-js'针对上面的示例.
| 归档时间: |
|
| 查看次数: |
811 次 |
| 最近记录: |