我正在尝试制作一个提交按钮,当它被单击时,图像将移动,另一个按钮在单击时将重置图像。
如果我使用onclick
函数执行此操作并且图像将移动且事情很好,但如果我将其与onsubmit
函数一起使用,则它将无效。任何人都可以给我一个想法?
这就是我的剧本:
function catMoveRight()
{
document.getElementById("cat").style.left=parseInt(document.getElementById("cat").style.left)+1+"px";
}
window.onload=function()
{
catTimer = null;
document.getElementById("start").onsubmit=function()
{
if(catTimer == null)
{
catTimer = setInterval("catMoveRight()",1000);
}
}
}
这是我的HTML body
:
<img src="cat.jpg" id="cat" style=" position: absolute; left: 10px;"/><br/>
<form action=" " method="post" id="start">
<input type="submit" value="Start" style="position: absolute; left: 10px; top: 220px;" />
</form>
答案 0 :(得分:4)
确保取消表单提交的默认操作。一种方法是从事件处理程序返回false
:
document.getElementById("start").onsubmit = function()
{
if(catTimer == null)
{
catTimer = setInterval(catMoveRight, 1000);
}
return false;
};
此外,无需将字符串传递给setInterval
。不要在没有必要的地方使用eval
。