下面 是我写出来的思路 但是代码是错误的 下面是我想实现的效果 求高手修改
<a id="A" onmouseOver="mouseOver(1)" >A</a>
<script type="text/javascript">
function mouseOver(u){
document.getElementById('A').onmouseOver.replace('mouseOver(1)','mouse(1)');
//但点击事件的时候 mouseOver(1) 替换为mouse 防止for循环的时候 事件被重新触发
var x=1;
for(;x==10;x++){alert(x);}
var aop = document.getElementById('A').onmouseOver;//但for语句循环完成后 获取onmouseOver里面的值
document.getElementById('A').onmouseOver.replace(aop,'mouseOver(1)');//获取后并且修改为正确
}
</script>
<a id="A" onmouseOver="mouseOver(1)" >A</a>
<script type="text/javascript">
function mouseOver(u){
document.getElementById('A').onmouseOver.replace('mouseOver(1)','mouse(1)');
//但点击事件的时候 mouseOver(1) 替换为mouse 防止for循环的时候 事件被重新触发
var x=1;
for(;x==10;x++){alert(x);}
var aop = document.getElementById('A').onmouseOver;//但for语句循环完成后 获取onmouseOver里面的值
document.getElementById('A').onmouseOver.replace(aop,'mouseOver(1)');//获取后并且修改为正确
}
</script>
<a id="A" onmouseOver="mouseOver(1)" >A</a>
<script type="text/javascript">
var running = false;
function mouseOver(u) {
if (running) return;
running=true
// document.getElementById('A').onmouseOver.replace('mouseOver(1)', 'mouse(1)');
//但点击事件的时候 mouseOver(1) 替换为mouse 防止for循环的时候 事件被重新触发
var x = 1;
for (; x == 10; x++) { alert(x); }
// var aop = document.getElementById('A').onmouseOver; //但for语句循环完成后 获取onmouseOver里面的值
// document.getElementById('A').onmouseOver.replace(aop, 'mouseOver(1)'); //获取后并且修改为正确
running=false
}
</script>
<script type="text/javascript">
var running = false;//开关变量,默认为false,函数不在执行中
function mouseOver(u) {
if (running) return;//如果上一次mouseover函数还为执行完毕又触发mouseover时就退出,不执行下面的代码
running=true//标记为触发了mouseover
var x = 1;
for (; x == 10; x++) { alert(x); }
running=false//标记mouseover已经执行完毕,下一次mouseover时可以触发
}
</script>