【发布时间】:2016-08-02 13:30:42
【问题描述】:
我遇到了一个不常见的问题:我有一个“点击”事件,每次点击运行两次。
<label class='refinement genre-refinement'>
<input type='checkbox' />
<div class='refinement-checkbox'></div>
</label>
$(".genre-refinement").click(function() {
console.log("Once or twice?");
}
这似乎是因为我有一个自定义的 CSS 复选框(删除 CSS 时它只工作一次)。
我尝试过阻止默认设置,但这会阻止自定义复选框检查。像 one("click") 这样的东西是不合适的,因为标签需要可以随心所欲地检查和取消检查。我还尝试将我的复选框移到标签之外,这似乎没有奏效。
我想我可以通过在我的 JQuery 中打上复选标记并放弃自定义复选框来解决问题,但我希望可能有替代方案。
感谢任何提示!
【问题讨论】:
-
你能给我们看看这个的工作代码吗?
-
你能显示css吗?我觉得我的回答不正确
-
谢谢大家。我在 Plnkr 上创建了一个简化版本:plnkr.co/edit/yM6PDWjk4mYS0QA7U85N?p=preview
-
您会看到阻止默认设置会阻止复选框检查。
标签: jquery click preventdefault