好吧,我对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会这样做?我应该怎么做才能在所有浏览器上同时处理模糊和更改工作?
答案 0 :(得分:4)
jQuery tools包含旧版的jQuery v1.4.2。这似乎在IE8中有一个错误,打破了您的预期功能。升级到v1.6.1,然后在IE8中触发这两个事件。我测试了旧版本的jQuery,并且在v1.4.3中修复了任何已损坏的内容,因此如果由于某种原因无法进行主要版本升级,那么希望小版本升级就可以了。