javascript的关于onmousemove=fun;表示只要鼠标移动一直触发函数,那么下面这段代码为什么只输出一次呢?
<!DOCTYPEhtml><html><head>ddddddddd<script>varn=0;functionmy(){n=n+1document.write(n+...
<!DOCTYPE html>
<html>
<head>ddddddddd
<script>
var n=0;
function my(){
n=n+1
document.write(n+"nihao</br>")
}
function myf(){
document.onmousemove=my;
}
document.onmousedown=myf;
</script>
</head>
<body>
</body>
</html> 展开
<html>
<head>ddddddddd
<script>
var n=0;
function my(){
n=n+1
document.write(n+"nihao</br>")
}
function myf(){
document.onmousemove=my;
}
document.onmousedown=myf;
</script>
</head>
<body>
</body>
</html> 展开
2个回答
展开全部
你只需要把document.write 换成console.log 就可以看到一只在运行了
document.write会把文档重置为空 所以当你移动的时候document.write把文档清空了你添加的事件也没有了 不信你可以在onmousedown哪里加一个alert应该也是只执行一次;
这是为什么只执行一次 如果你想检测的话可以随便打开一个网页 使用谷歌在控制台输入 document.write(" ");可以看到网页的内容为空了
(手打不易)求采纳
document.write会把文档重置为空 所以当你移动的时候document.write把文档清空了你添加的事件也没有了 不信你可以在onmousedown哪里加一个alert应该也是只执行一次;
这是为什么只执行一次 如果你想检测的话可以随便打开一个网页 使用谷歌在控制台输入 document.write(" ");可以看到网页的内容为空了
(手打不易)求采纳
展开全部
好了 我相信搜这个问题的仁兄通常遇到的问题是在html中onmousemove事件 一旦鼠标一在上方移动 就会一直触发 而我们有时候目地很简单 只要是从元素外变化成元素上时候就触发一次 我们就可以考虑使用JQjquery官网
$('#id').mouseover(function(){});
头文件路径-jquery-3.4.1
手写不易(有用请点赞 建议请评论)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询