Я пытаюсь заставить изображение летать по экрану один раз, а затем остановиться. Я могу заставить его работать в al oop, но это отвлекает, поэтому я хочу, чтобы он запускался только один раз. Кто-нибудь знает как? (Я должен использовать jQuery)
Это то, что я имею до сих пор, но я хочу, чтобы он запускался только один раз, а не в oop:
var speedX = 20;
var speedY = 1;
setInterval(function() {
var newLeft = $("img#bee").position().left + speedX + "px";
var newTop = $("img#bee").position().top + speedY + "px";
$("img#bee").css({
left: newLeft,
top: newTop
});
if ($("img#bee").position().left > $(window).width()) {
$("img#bee").css({
left: "0px"
});
}
if ($("img#bee").position().left < 0) {
$("img#bee").css({
left: $(window).width() + "px"
});
}
if ($("img#bee").position().top > $(window).height()) {
$("img#bee").css({
top: $(window).height() + "px"
});
}
$(".stop-btn").click(function() {
$("img#bee").stop();
});
}, 20);
#bee { display:inline-block; position:absolute }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<img id="bee" src="https://res-1.cloudinary.com/crunchbase-production/image/upload/c_lpad,h_256,w_256,f_auto,q_auto:eco/v1417678932/jgbmipdnqptqxbig3ywz.jpg" />