Javascript IE-如果选择框有特定的类,则阻止其聚焦(单击,双击)
我正在使用javascript模拟禁用的select元素。由于.net验证程序失败,我实际上无法禁用它,但这是另一回事 我有以下功能:Javascript IE-如果选择框有特定的类,则阻止其聚焦(单击,双击),javascript,jquery,internet-explorer,Javascript,Jquery,Internet Explorer,我正在使用javascript模拟禁用的select元素。由于.net验证程序失败,我实际上无法禁用它,但这是另一回事 我有以下功能: function preventFocus(e) { if ($(this).hasClass("disabled")) { e.preventDefault(); this.blur(); } } 这里称之为: $("#ProvinceID").toggleClass("disabled").bind('focus click dbl
function preventFocus(e) {
if ($(this).hasClass("disabled")) {
e.preventDefault();
this.blur();
}
}
这里称之为:
$("#ProvinceID").toggleClass("disabled").bind('focus click dblclick', preventFocus);
双击IE中的选择框似乎仍然允许显示和选择项目。我尝试了IE开发者工具栏,e.type显示为focus和dblclick。这是一个IE错误,还是我需要捕捉其他事件?我也试过聚焦
谢谢 我不知道这是否只是一个输入错误,但你应该使用e.preventDefault();看起来你好像漏掉了括号。这已经晚了4年,但我刚刚发现事实上有一种方法可以得到IE≤ 8要执行
e.preventDefault()
onmousedown
在其他浏览器中所做的操作(防止选择和防止聚焦):设置不可选择的属性
请注意,与通常建议的解决方法不同,它总是归结为setTimeout(function(){thingiditwantFocussTolenfrom.focus();})
,这从一开始就可以防止焦点被mousedown
目标窃取
unselectable
的有趣之处在于它不是继承的,所以它经常被忽略,而偏向于selectstart
事件(它冒泡,而e.preventDefault()
阻止选择,但不阻止焦点),或者通过树遍历在每个子元素上设置(如,或Tim Down),但实际上您可以将其设置为event.target
onmousedown
(还有,jqueryticket:)输入错误,是;回答,不是。不过谢谢。