我正在使用Hammer JS库进行小型项目,我在Chrome Dev Tools模拟器上遇到了问题,并在两台iOS 7设备上进行调试.它似乎在桌面浏览器上运行良好.在这里小提琴:http://jsfiddle.net/w80baz5g/5/以及更多信息如下.
我有一组元素,像这样:
<div>
<img class="item" id="item0" src="http://placehold.it/300x300">
<img class="item" id="item1" src="http://placehold.it/300x300">
<img class="item" id="item2" src="http://placehold.it/300x300">
</div>
Run Code Online (Sandbox Code Playgroud)
和锤子JS听轻敲事件:
function initItems(el) {
var itemToTap = new Hammer.Manager(el, itemOptions);
itemToTap.add( new Hammer.Tap() );
itemToTap.on("tap", function(event) {
console.log("tapped: " + event.target);
});
}
$(".item").each(function(){
var itemToInit = $(this)[0];
initItems(itemToInit);
});
Run Code Online (Sandbox Code Playgroud)
虽然在桌面浏览器(Chrome,Safari)中一切似乎都很好,但在移动设备上只有三分之一的元素似乎响应了tap事件,但控制台显示它对所有三个元素都有响应?第二和第三个元素根本没有响应.
在这里小提琴:http://jsfiddle.net/w80baz5g/5/
我错过了什么吗?这些事件/元素是否被移动浏览器区别对待?他们为什么不单独响应点击事件?
非常感谢!