setTimeOut未定义:Uncaught ReferenceError: setTimeOut is not defined。

18

首先,我是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 -->
请指导我...

13
应该使用 setTimeout,而不是 setTimeOut。 - dsgriffin
@null - :D 我想在鼠标从 #nav ul li a 移开一秒后将 menu_box 上滑.....我该怎么做呢?这个代码不起作用。 - Aung Thet
2个回答

58

这是错误的:setTimeOut

正确的单词是:setTimeout

(将大写字母O更改为小写字母o)


4
你刚刚拯救了我,让我免于精神崩溃的边缘 ;) - Mirko

5

setTimeOut 改为 setTimeout

//...

setTimeout(
   function(){
      if(!$(this).next('div').is(':hover')){
         $(this).next('div').slideUp('slow');
      }}
   ,1000);

//...

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接