3 回答
TA贡献1934条经验 获得超2个赞
marginTop
将返回带有px
后缀的值。所以你将无法做到(cour + 50)
。parseInt
会帮助你。
var cour = parseInt(document.getElementById("div").style.marginTop, 10)
marginTop
将返回'50px'
,parseInt
并将其转换为50
.
TA贡献1856条经验 获得超17个赞
<h1 onclick="up()" id="titre">Le texte du titre</h1>
<div id="div">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor
in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</div>
<img src="Koala.jpg">
<script type="text/javascript">
function descend() {
var cour = document.getElementById("div").style.marginTop;
if (cour === "") {
cour = 0;
}
cour = (cour + 50);
var newcour= cour + "px";
document.getElementById("div").style.marginTop = newcour;
}
function up() {
setInterval(descend, 2000);
}
</script>
TA贡献1859条经验 获得超6个赞
这是有效的:
https://codepen.io/ayhandoslu/pen/vYYPzYR?editors=1001
<script type="text/javascript">
function descend() {
var cour = +(document.getElementById("div").style.marginTop || "0px").replace("px", "");
var cour = (cour+50);
document.getElementById("div").style.marginTop = cour + "px";
}
function up() {
setInterval(descend, 2000);
}
</script>
添加回答
举报