javascript – Jquery的活功能突然不再工作了

前端之家收集整理的这篇文章主要介绍了javascript – Jquery的活功能突然不再工作了前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用jQuery live()函数来检测用户是否按下一些特殊键(箭头等):
$('.TextBox1').live('keydown',function(e) {
    var keyCode = e.keyCode || e.which;
    if (keyCode == 40) {
        e.preventDefault();
        // ...
    }
});

它工作正常几个月,突然之间昨天它停止工作,防止每一行JS代码下面执行.我试图用.keyup函数替换它,但这没有帮助.可能发生什么事

解决方法

我假设你已经更新到最新版本的jQuery? live()自jQ1.7以来已被弃用,现在已从1.9开始删除.

而应该使用on()和delegate参数:

$(document).on('keydown','.TextBox1',function(e) {
    var keyCode = e.keyCode || e.which;

    if (keyCode == 40) {
        e.preventDefault();
        //...
    }
});

请注意,为了获得最佳性能,您应该将上述示例中的文档替换为.TextBox1的最接近的父元素,该页面页面加载后未动态附加到DOM.

猜你在找的jQuery相关文章