无法通过Firefox在& lt; select& gt; [英] Cannot preventDefault via Firefox on a <select>

查看:52
本文介绍了无法通过Firefox在& lt; select& gt;的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

尝试阻止在Firefox上的< select> 上默认为keydown事件,但是它不起作用.

Trying to preventDefault a keydown event in Firefox on a <select> but it does not work.

有什么解决方法吗?

甚至IE也能处理但Firefox无法处理的东西!

For once something that even IE handles but Firefox does not!

在此处查看代码:

http://jsfiddle.net/p8FNv/1/

<select id="select">
    <option value="1">Monday</option>
    <option value="2">Tuesday</option>
    <option value="3">Wednesday</option>
    <option value="4">Thursday</option>
    <option value="5">Friday</option>
    <option value="6">Saturday</option>
    <option value="7">Sunday</option>
</select>

$(document).ready(function() {

    $("#select").keydown(function (event) {
        event.preventDefault();
        event.stopPropagation();        
    });         
});

推荐答案

这不是很优雅,但是可以起作用:

This is not much elegant but works:

$("select").keydown(function(e){
    e.preventDefault();
    var elem = this;
    elem.disabled=true;
    setTimeout(function() { elem.disabled = false; }, 0);
});

问候.

这篇关于无法通过Firefox在&amp; lt; select&amp; gt;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆