jsfiddle只工作一次

时间:2013-05-16 12:06:06

标签: jquery jsfiddle

这是我jsfiddle的链接。我有一个关于悬停效果的下拉导航栏。这个效果在我运行项目时只能工作一次。之后它再次运行它不起作用。 是否必须对“框架和扩展”选项执行任何操作?我读了一些关于here的内容,但还没有清楚地理解它们之间的区别。  这是我的js代码

function mainmenu(){
$("#bav .inner ul ul").css({display: "none"}); // Opera Fix
$("#bav .inner ul li").hover(function(){
    $(this).find('ul:first').css({visibility: "visible",display:"none"}).slideDown(400, 'backout');
    },function(){
    $(this).find('ul:first').css({visibility: "hidden"});
    });
}
$(document).ready(function() {
                       mainmenu();
        });

我正在选择onLoad“选项”。 谁能告诉我为什么在运行代码后只能看到一次效果?

2 个答案:

答案 0 :(得分:0)

不确定为什么要在slideDown()中使用退出,但这会破坏代码..

$(this).find('ul:first').css({visibility: "visible",display: "none"}).slideDown(400); //<---removed backout here

working fiddle

答案 1 :(得分:0)

请勿更改visibilitydisplay。只需使用hide()show()即可。并且您的slideDown参数无效。见http://jsfiddle.net/UyqFc/19/

$("#bav .inner ul ul").hide(); // Opera Fix
$("#bav .inner ul li").hover(function () {
    $(this).find('ul:first').slideDown();
}, function () {
    $(this).find('ul:first').hide();
});