[英]Function doesn't work properly inside an `if` statement javascript/jQuery
[英]if statement doesn't work inside a function
我希望通过Jobbra按钮将图片逐步移至左侧,直到1300px,因此我添加了if语句来实现此目的,但是onlclick无效。 如果删除if语句,则按钮单击功能会自行起作用。 我的if语句有什么问题? 谢谢
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>PingPongKép</title>
<link rel="stylesheet" href="CSS/style.css">
</head>
<body>
<div id="ilonakep">
<img src="/img/ilona.jpg" alt="ilona">
</div>
<p id="gombok">
<button onclick="balra()">Balra</button>
<button onclick="jobbra()">Jobbra</button>
</p>
<script>
var jobbAnim = 1;
var speed = 1;
var balAnim = 0;
function jobbra() {
if ( jobbAnim < 1300){
var jobbAnim = jobbAnim + speed;
}
document.getElementById("ilonakep").style.marginLeft = jobbAnim + "px";
}
function balra() {
document.getElementById("ilonakep").style.marginLeft = balAnim + "px";
}
</script>
</body>
</html>
希望这能解决问题
var jobbAnim = 1; var speed = 10; var balAnim = 0; var max = 80; // 1300 here. function jobbra () { var ilonakep = document.getElementById("ilonakep"); if (ilonakep.clientWidth + parseInt(ilonakep.style.marginLeft) < max || ilonakep.style.marginLeft == '') { jobbAnim = jobbAnim + speed; ilonakep.style.marginLeft = jobbAnim + "px"; } else console.log(max+' reached'); } function balra () { document.getElementById("ilonakep").style.marginLeft = balAnim + "px"; jobbAnim = 0; }
#ilonakep { width: 50px; height: 50px; border: 1px solid #000; margin: 0; }
<div id="ilonakep"> <img src="/img/ilona.jpg" alt="ilona"> </div> <p id="gombok"> <button onclick="balra()">Balra</button> <button onclick="jobbra()">Jobbra</button> </p>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.