经过一些测试后,我注意到event.stopImmediatePropagation()在IE中不起作用(以下用法)。但是,它适用于Chrome,FF,Safari和Opera。是什么给了什么?
请参阅 this fiddle 重新登录IE(在其他浏览器中测试小提琴,看它是否有效)。
小提琴javascript:
$(function(){
$('#text').focus(function(event){
$('#text').val('Use the button to test this.');
});
$('#button').click(function(event){
// remove all handlers
$('#text').off('focus');
// now add this other handler in first position
$('#text').one('focus', function(event){
$('#text').val('Yay it works! stopImmediatePropagation works in your browser!!');
event.stopImmediatePropagation();
});
// now add a handler in the 2nd position that shouldn't get run
$('#text').focus(function(event){
$('#text').val('Oh No! stopImmediatePropagation failed to work in your browser!!');
});
// now set the focus to test it
$('#text').focus();
});
});
小提琴html:
<input id='button' type="button" value="Start Test"/>
<input id='text' style='width:400px;' />
答案 0 :(得分:3)
IE从IE 9(http://msdn.microsoft.com/en-us/library/ie/ff975461(v=vs.85).aspx)开始支持stopImmediatePropgation,但jquery是问题。
代码中使用的jquery版本无效。这个jsfiddle在IE中完美运行,代码完全相同。唯一的区别是它使用jQuery 1.9.1而不是jQuery 1.8.3