Ich benutze setInterval mit jQuery, um die Position eines Hintergrundbilds onLoad zu ändern, aber ich möchte es als Funktion verwenden, damit ich clearInterval aufrufen kann, wenn ein Element angeklickt wird und um die Funktion erneut aufzurufen, wenn auf ein anderes Element geklickt wird, aber panRight() nicht unter Last arbeitet.Verwendung von setInterval und clearInterval als Funktionen
function moveImage() {
var x = 0;
x-=1;
$('.bg-img').css('background-position-x', x + 'px');
}
function panRight(){
setInterval(moveImage(),25);
}
// moveImage onLoad
panRight();
$("#stop-animation").click(function(){
clearInterval(panRight);
});
$("#start-animation").click(function(){
panRight();
});
Der folgende Code funktioniert wie beabsichtigt onLoad und ist das, was ich versuche, wie Funktionen Refactoring.
$(function(){
var x = 0;
setInterval(function(){
x-=1;
$('.bg-img').css('background-position', x + 'px 0');
}, 25);
})
'var panRight = setInterval löschen (moveImage, 25); ', not' Funktion panRight() {setInterval (moveImage(), 25);} '. – Xufox
Wenn Sie auf die Tags für setInterval und/oder clearInterval klicken, werden Fragen mit diesen Tags angezeigt. Wenn Sie auf "Weitere Informationen" klicken, wird das Tag-Wiki angezeigt, das Informationen zur Verwendung der Funktionen enthält, einschließlich Links zur Dokumentation. –
Danke. Das wusste ich nicht. – Fettabachi