Jquery代码:意外的令牌

时间:2018-05-07 10:46:15

标签: jquery html

$(document).ready(function(){
    if('.huvud li').hover{
        $('ul.hand:not(:animated)',this).slideDown(500);
    }
    else{
        $('ul.sub', this).slideUp(300);
    }
});

我正在尝试制作一个代码,它基本上会让菜单在悬停在其上时向下滑动,尝试过这种方式,但它说它有一些意想不到的令牌,为什么? (我是初学者)

3 个答案:

答案 0 :(得分:0)

您的if条件不正确并且没有错误。它应该是if($('.huvud li').hover())。您需要$('.huvud li')因为hover()只能应用于JQuery对象。

每当您使用JavaScript和JQuery时,您都应该看到浏览器控制台出错,因为它们可以帮助您解决错误并找出原因。

$(document).ready(function(){
    if($('.huvud li').hover()){
        $('ul.hand:not(:animated)',this).slideDown(500);
    }
    else{
        $('ul.sub', this).slideUp(300);
    }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

答案 1 :(得分:0)

您需要使用.hover( handlerIn, handlerOut )方法

$(document).ready(function() {
  $('.huvud li').hover(function() {
    $('ul.hand:not(:animated)', this).slideDown(500);
  }, function() {
    $('ul.sub', this).slideUp(300);
  });
});

请注意,这只是

的简写
$(selector).mouseenter( handlerIn ).mouseleave( handlerOut );

答案 2 :(得分:0)

你可能正在寻找这样的东西:

&#13;
&#13;
$(document).ready(function(){
    $('div').hover(
       ()=>$('ul',this).slideDown(500)
    ,
       ()=> $('ul', this).slideUp(300)
    )
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
hello

</div>
<ul>
<li>1</li>
<li>2</li>
</ul>
&#13;
&#13;
&#13;