首先,我是javascript的新手,我在setTimeOut中遇到了问题...
这是我的脚本代码........
$('#nav ul li a').hover(function(){
$(this).next("div").slideDown("fast").siblings("div").slideUp("slow");
console.log("hover");
},
function(){
setTimeOut(
function(){
if(!$(this).next('div').is(':hover')){
$(this).next('div').slideUp('slow');
}}
,1000)
});
这是我的HTML代码.....
</div> <!-- end of first-row -->
<ul>
<li>
<a href="#">Home </a><div class="menu_box box1"></div>
</li>
<li>
<a href="#">Place</a><div class="menu_box box2"></div> <!-- end of menu -->
</li>
<li>
<a href="#">Guide</a><div class="menu_box box3"></div>
</li>
<li>
<a href="#">Contact</a>
</li>
<li>
<a href="#">About Us</a>
</li>
</ul>
</div> <!-- end of nav -->
请指导我......
答案 0 :(得分:32)
这是错误的:setTimeOut
正确的话:setTimeout
(将O改为小写o)
答案 1 :(得分:3)
将 setTimeOut 更改为 setTimeout :
//...
setTimeout(
function(){
if(!$(this).next('div').is(':hover')){
$(this).next('div').slideUp('slow');
}}
,1000);
//...