Bekommen element auf touchstart?
Habe ich eine Reihe von divs auf einer Seite, die können Sie streichen Sie nach Links auf, die offenbaren wird, ein div darunter. Dies funktioniert gut, wenn es nur ein element, aber wenn es mehrere, Sie alle streichen unisono, statt immer geklaut allein.
Um dies zu beheben, versuchte ich die Ideen hier: Element suchen finger während ein touchend-Ereignis
Problem ist jetzt nur das erste element wird geklaut, während der rest von Ihnen bleiben stationär. Irgendwelche Ideen, wie ich dieses Problem beheben könnte? Ich dachte, ich könnte this
, aber es würde immer wieder die window
Objekt.
Code:
var originalCoord = {
x: 100,
y: 100
}
var finalCoord = {
x: 100,
y: 100
}
function touchMove(event) {
event.preventDefault();
finalCoord.x = event.targetTouches[0].pageX
finalCoord.y = event.targetTouches[0].pageY
}
function touchEnd(event) {
var changeY = originalCoord.y - finalCoord.y
if (changeY < 30 && changeY > (30 * -1)) {
changeX = originalCoord.x - finalCoord.x
if (changeX > 10) {
var elem = document.elementFromPoint(event.pageX, event.pageY);
console.log(elem);
$(elem).css("margin-left", "-54px");
setTimeout(function () {
$(elem).css("margin-left", "0px");}
, 500);
}
}
}
function touchStart(event) {
originalCoord.x = event.targetTouches[0].pageX
originalCoord.y = event.targetTouches[0].pageY
finalCoord.x = originalCoord.x
finalCoord.y = originalCoord.y
}
this.addEventListener("touchstart", touchStart, false);
this.addEventListener("touchmove", touchMove, false);
this.addEventListener("touchend", touchEnd, false);
Demo (funktioniert nur über iOS): http://www.codekraken.com/testing/snowday/swipe.html
event.target
?Ich glaube nicht, irgendetwas einfach war das... könnte Sie post, als Antwort und ich werde markieren Sie es als akzeptiert.
InformationsquelleAutor Charlie | 2012-10-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie das element, das das Ereignis entstanden ist, mit
event.target
.InformationsquelleAutor ahren
mit
obj = $(this)
können Sie verwandelnevent.target
in ein jquery-Objekt mit den jquery-Funktionen...besten
M
InformationsquelleAutor mboeckle