gpt4 book ai didi

javascript - 将 jQuery 事件应用于所有类元素?

转载 作者:数据小太阳 更新时间:2023-10-29 05:55:39 26 4
gpt4 key购买 nike

我有以下代码,允许运行 iOS 的用户移动 <div>同类.drag在页面上左右。当存在一个 .drag 时,这很好用, 但当它有两个实例时无法工作。是否可以让代码找到所有 <div>的,然后允许它们可拖动?

var drag = $(".drag")[0];
xPos = drag.offsetWidth / 2;
yPos = drag.offsetHeight / 2;
drag.addEventListener("touchmove", function() {
event.preventDefault();
$(this).css({
'left' : event.targetTouches[0].pageX - xPos + 'px',
'top' : event.targetTouches[0].pageY - yPos + 'px'
});
});

最佳答案

当您使用 $(selector)[0] 时,您将获得与选择器匹配的第一个 DOM 元素。使用 .each() 代替将事件监听器添加到匹配选择器的所有元素:

$(".drag").each(function () {
var drag = this;
xPos = drag.offsetWidth / 2;
yPos = drag.offsetHeight / 2;
drag.addEventListener("touchmove", function() {
event.preventDefault();
$(this).css({
'left' : event.targetTouches[0].pageX - xPos + 'px',
'top' : event.targetTouches[0].pageY - yPos + 'px'
});
});
});​

关于javascript - 将 jQuery 事件应用于所有类元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12335859/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com