停止Javascript函数

停止Javascript函数,javascript,html,function,Javascript,Html,Function,我希望JavaScript在单击图像后停止。单击spider gif后,它将变为splatter.png,但splatter会继续四处移动。我对JavaScript不太熟悉,无法理解它。如果你能帮忙,请告诉我。谢谢大家! var dir_h='right'; var dir_v=‘向下’; 函数reset1(){ clearTimeout(我的时间); document.getElementById('i1').style.left=“500px”; document.getElementBy

我希望JavaScript在单击图像后停止。单击spider gif后,它将变为splatter.png,但splatter会继续四处移动。我对JavaScript不太熟悉,无法理解它。如果你能帮忙,请告诉我。谢谢大家!

var dir_h='right';
var dir_v=‘向下’;
函数reset1(){
clearTimeout(我的时间);
document.getElementById('i1').style.left=“500px”;
document.getElementById('i1').style.top=“100px”;
document.getElementById(“msg”).innerHTML=“”;
}
函数disp(){
var step=2;//若要更改速度,请更改此步长值
//警报(dir);
var y=document.getElementById('i1').offsetTop;
var x=document.getElementById('i1').offsetLeft;
如果(x>=900){
dir_h=‘左’;
}
如果(x=500){
dir_v=‘向上’;
}

如果(y调用
onclick
卡盘代码中的重置功能

<img name="myButton" src="spider-animated-1.gif" id='i1' onclick="reset1(); document.myButton.src='splatter.png';" style="position:absolute; left: 500; top: 100;">


此外,在同一元素中有两个
onclick
属性也没有意义。

AFAIU您只需在图像上调整onclick即可:

var dir_h='right';
var dir_v=‘向下’;
函数reset1(){
clearTimeout(我的时间);
document.getElementById('i1').style.left=“500px”;
document.getElementById('i1').style.top=“100px”;
document.getElementById(“msg”).innerHTML=“”;
}
函数disp(){
var step=1;//若要更改速度,请更改此步长值
//警报(dir);
var y=document.getElementById('i1').offsetTop;
var x=document.getElementById('i1').offsetLeft;
如果(x>=900){
dir_h=‘左’;
}
如果(x=500){
dir_v=‘向上’;
}

如果(y)你总是可以用“return”键退出一个方法,你能给我举个小例子吗?Javascript不是我的强项。Call
reset1()
onclick
函数中。您在同一
img
上注册了2个
onclick
,每个元素只能有一个内联属性事件处理程序,所以按照@Bamar的建议,将所有函数/语句/表达式组合在一个
onclick
中。现在它运行正常了。谢谢@zer00ne