我正在构建一个简单的单页应用程序,它允许某人管理 json 提要列表。我在尝试将 mouseenter/mouseleave 事件绑定到页面上具有给定类的所有输入时遇到了问题。简单地说,第一个有效,第二个无效。
我必须关注jquery:
$(".feed").on("mouseenter", ".publish", function(){
console.log("feed")
}); //this is for test purposes
$(".feed").on("mouseenter", ".keys-input", function(){
console.log($(this));
$(this).siblings(".delete").fadeIn(75);
});
$(".feed").on("mouseleave", ".keys-input", function(){
$(this).siblings(".delete").fadeOut(75);
});
和以下html:
<div class="feed"><!-- sorry for the confusion -->
<div class="feed-header">
<h2>pga-2013.json</h2>
<button class="publish button-white-bg button-save">Publish</button>
</div>
<div class="kvRow collapsed">
<span class="delete icon">x</span>
<input type="text" class="keys-input" value="free" disabled=""/>
<input type="text" class="values-input" value="0" disabled=""/>
</div>
</div>
我问是否有最大数量的元素可以绑定的原因是因为".feed"
事件触发并且在 dom 上只有 11 个,而".keys-input"
事件没有并且在 dom 上有 7266 个。要么是那个,要么我是瞎子,做着愚蠢的事情......
这是一个元素较少但代码相同的小提琴http://jsfiddle.net/khLPc/
这就是问题所在:禁用输入上的事件输入被禁用,因此它们不会触发对我来说是香蕉的事件...