大佬教程收集整理的这篇文章主要介绍了jquery – 为具有相同id的所有元素初始化Hammer.js,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
<div class="gitem-wrap row"> <div class="gitem"> <div class="well"> <figure id="img-item"><img src="images/2.jpg" class="img-responsive"></figure> <article> ... </article> </div> </div> <div class="gitem"> <div class="well"> <figure id="img-item"><img src="images/2.jpg" class="img-responsive"></figure> <article> ... </article> </div> </div> </div>
Js初始化HAMMer js:
var myElement = document.getElementById('img-item'); var mc = new HAMMer(myElement); mc.on("doubletap",function() { //myElement.toggleClass('liked'); console.log('Double tap!'); return false; });
它只适用于第一个元素,但不适用于所有元素.
如何为所有具有相同ID的元素初始化HAMMer js?
JSfiddle:http://jsfiddle.net/ekdfokc5/
谢谢你的帮助.它在hAMMer.js v1中工作得很好
http://jsfiddle.net/ekdfokc5/3
但是在新版本(2.0.4)中存在问题并且$(‘figured’).toggleClass(‘likes’)在doubletap之后不起作用. http://jsfiddle.net/ekdfokc5/4
MDN source : Element.id:文档中必须是唯一的
$('figure').each(function(){ //tagname based SELEctor var mc = new HAMMer(this); mc.on("doubletap",function() { console.log('Double tap!'); alert('Double tap!'); //$(myElement).toggleClass('liked'); return false; }); });
或者,按类替换重复的ID,并使用基于类的选择器.
<figure class="img-item">
$('.img-item').each(function(){ var $this = $(this); var mc = new HAMMer(this); mc.on("doubletap",function() { console.log('Double tap!'); alert('Double tap!'); $this.toggleClass('liked'); return false; }); });
$(this).toggleClass(‘..’)的小提琴不起作用,因为on()内部是锤子对象而不是当前对象.
以上是大佬教程为你收集整理的jquery – 为具有相同id的所有元素初始化Hammer.js全部内容,希望文章能够帮你解决jquery – 为具有相同id的所有元素初始化Hammer.js所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。