Javascript 内联JS(OnMouseOver)-重复某些操作,直到出现MouseOut
考虑到我仅限于运行内联代码(没有外部js文件或标记),有没有办法每10毫秒运行一次给定的函数 我只能使用:Javascript 内联JS(OnMouseOver)-重复某些操作,直到出现MouseOut,javascript,jquery,Javascript,Jquery,考虑到我仅限于运行内联代码(没有外部js文件或标记),有没有办法每10毫秒运行一次给定的函数 我只能使用: <div onmouseover="functions here" onmouseout="functions here"> 更具体地说,我想使用marginLeft将另一个元素移动到左侧,每10毫秒移动50px,但是我不能像上面提到的那样运行external函数或js库 我曾考虑将其全部合并到onmouseover和setInterval(函数,10)中,但我看不到在m
<div onmouseover="functions here" onmouseout="functions here">
更具体地说,我想使用marginLeft将另一个元素移动到左侧,每10毫秒移动50px,但是我不能像上面提到的那样运行external函数或js库
我曾考虑将其全部合并到onmouseover和setInterval(函数,10)中,但我看不到在mouseout发生时停止此操作的方法
我知道我可以使用.on之类的jQuery事件处理程序,但这里没有这些选项,因为它们必须从外部加载(而不是内联)设置全局变量:
<div onmouseover="if (!window.intervalId)
window.intervalId=setInterval(function() {/*your code*/}, 10);"
onmouseout="clearInterval(window.intervalId); window.intervalId=null;">
设置全局变量:
<div onmouseover="if (!window.intervalId)
window.intervalId=setInterval(function() {/*your code*/}, 10);"
onmouseout="clearInterval(window.intervalId); window.intervalId=null;">
不幸的是,在这种情况下,onmouseout不会停止操作。如果我尝试在Chrome Javascript控制台中运行代码,它也会返回null。如果我尝试在Chrome Javascript控制台中运行代码,它也会返回null。