突兀和不引人注目的javascript有什么区别 - 用简单的英语.简洁是值得赞赏的.简短的例子也很感激.
我意识到Firefox 对标签的点击事件<select>与Webkit/IE不同,我无法弄清楚为什么或如何解决这个差异.
具体而言,Webkit的/ IE将每个点击事件上<select> 作为组合两个点击"选择",和下拉的一个的点击<option>,在下面曲线图所示:
首先点击:

第二次点击:

在Webkit/IE中,只有在完成两次单击后才会触发click事件.
但是,在Firefox中,首次单击<select>标记被视为单击事件,第二次单击以选择<option>被视为另一个单击事件.因此,2个 点击事件已经在Firefox解雇比较一个 WebKit中/ IE进行同样的操作.
现在在代码示例中演示它,假设我们有:(JSfiddle link)
<select id="sel">
<option>one</option>
<option>two</option>
<option>three</option>?
</select>
<script>
function select() {
$("#sel").one("click", function(event) {
console.log('mouse down!');
$("#sel").one('click', function() {
console.log('mouse down again!');
$("#sel").off();
select();
});
});
}
$(document).ready(function() {
select();
});
</script>
Run Code Online (Sandbox Code Playgroud)
在Webkit/IE中,执行上图中所示的一组操作(第一次)将给出输出:
mouse down!
Run Code Online (Sandbox Code Playgroud)
在Firefox中,它将给出:
mouse down!
mouse …Run Code Online (Sandbox Code Playgroud) <select class="input" style="width:200px">
<option>---</option>
<option onclick="window.location="link.php">one</option>
<option onclick="window.location="link2.php"">two</option>
</select>
Run Code Online (Sandbox Code Playgroud)
它不适用于chrome,它适用于opera/mozilla等.有什么建议?