jQuery中live()使用报错,TypeError: $(...).live is not a function
Posted masonblog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery中live()使用报错,TypeError: $(...).live is not a function相关的知识,希望对你有一定的参考价值。
原地址: https://blog.csdn.net/sdfdyubo/article/details/59536781
1、使用
(1)原写法
/*为选项卡绑定右键*/
$(".tabs li").live(‘contextmenu‘, function (e) {
/*选中当前触发事件的选项卡 */
var subtitle = $(this).text();
$(‘#mainTab‘).tabs(‘select‘, subtitle);
//显示快捷菜单
$(‘#tab_menu‘).menu(‘show‘, {
left: e.pageX,
top: e.pageY
});
return false;
});
(2)调整后的写法
/*为选项卡绑定右键*/
$(".tabs").on("contextmenu", "li", function (e) {
/*选中当前触发事件的选项卡 */
var subtitle = $(this).text();
$(‘#mainTab‘).tabs(‘select‘, subtitle);
//显示快捷菜单
$(‘#tab_menu‘).menu(‘show‘, {
left: e.pageX,
top: e.pageY
});
return false;
});
2、说明
jquery中的live()方法在jquery1.9及以上的版本中已被废弃了,如果使用,会抛出TypeError: $(...).live is not a function
错误。
解决方法:
之前的用法:
.live(events, function)
新方法:
.on(eventType, selector, function)
若selector不需要,可传入null
例子1:
之前:
$(‘#mainmenu a‘).live(‘click‘, function)
之后:
$(‘#mainmenu‘).on(‘click‘, ‘a‘, function)
例子2:
之前:
$(‘.myButton‘).live(‘click‘, function)
之后(应使用距离myButton最近的节点):
$(‘#parentElement‘).on(‘click‘, ‘.myButton’, function)
若不知最近的节点,可使用如下的方法:
$(‘body‘).on(‘click‘, ‘.myButton’, function)
以上是关于jQuery中live()使用报错,TypeError: $(...).live is not a function的主要内容,如果未能解决你的问题,请参考以下文章