Ich habe dieses Stück Skript, in dem ich geschafft habe, dass das Mausrad-Ereignis die Seite horizontal statt vertikal verschieben. Aber ich wollte ihm auch etwas Schwung verleihen. Ich habe die "After" -Funktion erstellt, aber die .scrollLeft
für Körper wird nicht ausgeführt.Warum funktioniert .scrollLeft nicht in einer Timeout-Funktion?
var rate = 150;
$(function() {
$("body").mousewheel(function (event, delta) {
function after() {
$("body").scrollLeft -= (delta * 1000);
console.log(delta);
event.preventDefault();
};
this.scrollLeft -= (delta * rate);
event.preventDefault();
setTimeout(function() {
after(delta, event)
}, 3000);
});
});
So wie ich es sehe, nach 3 Sekunden soll der Körper mit (delta * 1000)
Geschwindigkeit bewegen, aber es funktioniert nicht aus irgendeinem Grunde.
Ihre ‚nach‘ Funktion keine Argumente übernimmt? – pooyan
es ist, das 'console.log' in der After-Funktion wurde speziell gemacht, um zu sehen, ob es die Parameter bekommt. Die erste Iteration des Skripts war in diesem Sinne nicht korrekt (daher der Edit) –