关于clearTimeout和setTimeout的问题

k1060220963 2011-09-20 05:28:08
<span id="">
<input type="text" name="name1" onmouseover="mouseover_div()" onmouseout="mouseout_idv()">
<div id="divs">
<ul>
<li>测试</li>
<li>测试</li>
</ul>
</div>
</span>
<script>
function mouoseover_div()
{
m=setTimeout("document.getElementById('divs').display='block'",1000);
}
function mouseout_div()
{
clearTimeout(m);
setTimeout("document.getElementById('divs').display='none'",1000);
}
</script>
但是发现清除计时器米有管用。求高手指点代码哪里出了问题。
...全文
184 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
泡泡鱼_ 2012-10-08
  • 打赏
  • 举报
回复
<input type="text" name="name1" onmouseover="mouseover_div()" onmouseout="mouseout_idv()">

<input type="text" name="name1" onmouseover="mouseover_div()" onmouseout="mouseout_div()">
zkl312743141 2012-10-08
  • 打赏
  • 举报
回复
[img=https://forum.csdn.net/[/img]
zkl312743141 2012-10-08
  • 打赏
  • 举报
回复
峭沙 2011-09-21
  • 打赏
  • 举报
回复
var m;
function mouoseover_div()
{
m=setTimeout("document.getElementById('divs').display='block'",1000);
}
function mouseout_div()
{
clearTimeout(m);
setTimeout("document.getElementById('divs').display='none'",1000);
}
happypo2009 2011-09-21
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 gewei565 的回复:]
我忍不住要说两句了,大神门,js中变量是可以不用先声明的,不用var声明的变量赋值后会被添加到全局名字空间中,成为一个全局变量!它这里的m就会是一个全局变量了,后面一个方法完全能够访问得到。
楼主代码的问题是因为函数名拼错了,引用的函数名跟定义的不一样,自己检查一下,出问题了要多调试。
[/Quote] +1
「已注销」 2011-09-21
  • 打赏
  • 举报
回复
我忍不住要说两句了,大神门,js中变量是可以不用先声明的,不用var声明的变量赋值后会被添加到全局名字空间中,成为一个全局变量!它这里的m就会是一个全局变量了,后面一个方法完全能够访问得到。
楼主代码的问题是因为函数名拼错了,引用的函数名跟定义的不一样,自己检查一下,出问题了要多调试。
ganlu423 2011-09-21
  • 打赏
  • 举报
回复
定义全局变量。
豆虫 2011-09-20
  • 打赏
  • 举报
回复
你的m没有定义成全局变量
你的写法错误在于:两个函数中的m的作用域是私有的 两个m不可作为一个m来使用 必能彼此互相使用
寒似火 2011-09-20
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 sxldfang 的回复:]

m定义在函数外:

<script>
var m;
function mouoseover_div()
{
m=setTimeout("document.getElementById('divs').display='block'",1000);
}
function mouseout_div()
{
clearTimeout(m);
setTimeout("d……
[/Quote]
+1
wishifef 2011-09-20
  • 打赏
  • 举报
回复

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script>
var m;
function mouseover_div()
{
m=setTimeout("document.getElementById('divs').style.display='block'",1000);
}
function mouseout_div()
{
clearTimeout(m);
m=setTimeout("document.getElementById('divs').style.display='none'",1000);
}
</script>

</HEAD>

<BODY>
<span id="">
<input type="text" name="name1" onmouseover="mouseover_div()" onmouseout="mouseout_div()">
<div id="divs">
<ul>
<li>测试</li>
<li>测试</li>
</ul>
</div>
</span>
</BODY>
</HTML>


function mouseover_div() function mouseout_div()
函数名和你下面引用的不一致!
qq137051908 2011-09-20
  • 打赏
  • 举报
回复

<script>
function mouoseover_div()
{
m=setTimeout("document.getElementById('divs').style.display='block'",1000);
}
function mouseout_div()
{
clearTimeout(m);
setTimeout("document.getElementById('divs').style.display='none'",1000);
}
</script>

sxldfang 2011-09-20
  • 打赏
  • 举报
回复
m定义在函数外:

<script>
var m;
function mouoseover_div()
{
m=setTimeout("document.getElementById('divs').display='block'",1000);
}
function mouseout_div()
{
clearTimeout(m);
setTimeout("document.getElementById('divs').display='none'",1000);
}
</script>
三石-gary 2011-09-20
  • 打赏
  • 举报
回复
你这个M是什么玩意啊。。。调试看看。。。光凭看怎么能看出来。。

87,923

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧