这个简单的测试代码在所有浏览器除了IE以外(在IE8测试):有谁知道如果IE'返回false'?
#dBox {
height:100px;
width: 230px;
overflow-y:auto;
}
$(function() {
$('#s').focus(function(){
$(this).after('<ul id="dBox"></ul>');
for (i=0;i<10;i++) $('#dBox').append('<li>'+i+'</li>');
});
$('#dBox').live('mousedown',function(event) {
//event.stopPropagation();
//event.preventDefault();
//console.log (event.isDefaultPrevented());
//event.stopImmediatePropagation();
return false;
});
$('#s').blur(function() { $('#dBox').remove(); });
});
<input type="text" id="s"/>
我试着从活FN所有选项,但没有运气。
在event.isDefaultPrevented()
它返回true,但#dBox
它仍然被删除。
我甚至试图绑定焦点fn内的常规mousedown。但同样的结果,它在所有的浏览器,但不是IE。
有没有人有任何想法是什么错?
http://stackoverflow.com/editing-help – 2010-11-10 00:59:27
您发布的代码实际上不会工作。你将一个松散的JavaScript块传递给'$('#s')。focus()'。这是你的实际代码吗? – 2010-11-10 01:01:31
实际的代码更加复杂,但我已经在一个单独的文件中测试了上面的代码,看看我是否可以跟踪prb,但目前还没有运气。 – silversky 2010-11-10 01:04:42