繁体   English   中英

jQuery HTML点击事件两次触发

[英]jQuery HTML click event firing twice

我有一个自定义选择菜单按钮,我已绑定到html点击事件关闭它。 但事件发生了两次。

http://jsfiddle.net/GnzBj/1/

$(function () {
    $('html').click(function () {
        console.log('html');
    });
});

任何人都知道为什么/如何防止它发射两次?

事件被触发两次的原因是因为您在label内部拥有整个UI。

<div  ...>
    <label for="xmod-form-51183d51afa3d" ... >
        <select name="theme" id="xmod-form-51183d51afa3d" ...>
            ...
        </select>
        ...
    </label>
</div>

单击标签还将触发与其相关的表单元素上的单击事件。

如果删除label元素,它将按预期工作: http//jsfiddle.net/GnzBj/5/

如果您需要label ,请让它包含尽可能少的UI,但点击它仍然会触发两个事件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM