jquery IE8 - 使用live('blur',function)和live('change',function)

时间:2011-05-20 22:42:09

标签: jquery internet-explorer-8 onchange blur

好吧,我对IE8和jQuery有一个奇怪的问题。请参阅以下代码:

<!DOCTYPE html>
<html dir="ltr">
<head> 
</head>
<body>
<input>
<script type="text/javascript" language="javascript" src="jquery.tools.min.js"></script> 
<script type="text/javascript" language="javascript">
$(document).ready(function() {
        $('input').live('blur',function(){alert('blur');});
        $('input').live('change',function(){alert('change');});
});
</script>
</html>

使用代码,我无法在编辑输入字段后触发更改事件处理程序。但是,如果我注释掉模糊事件处理程序,则会触发更改。

为什么IE8会这样做?我应该怎么做才能在所有浏览器上同时处理模糊和更改工作?

1 个答案:

答案 0 :(得分:4)

jQuery tools包含旧版的jQu​​ery v1.4.2。这似乎在IE8中有一个错误,打破了您的预期功能。升级到v1.6.1,然后在IE8中触发这两个事件。我测试了旧版本的jQuery,并且在v1.4.3中修复了任何已损坏的内容,因此如果由于某种原因无法进行主要版本升级,那么希望小版本升级就可以了。