Jquery IE和Firefox中闪烁的下拉菜单

Jquery IE和Firefox中闪烁的下拉菜单,jquery,css,drop-down-menu,navigation,Jquery,Css,Drop Down Menu,Navigation,我已经创建了一个下拉菜单,我在许多网站上使用过。由于某种原因,在这个应用程序()中,菜单会闪烁,并且在Firefox和IE8-10中都放错了位置。它在Chrome和Safari中工作良好。知道为什么会这样吗?我认为这是一个CSS的问题,但我一辈子都搞不清楚 谢谢你的帮助 以下是我在菜单上使用的JS: //Add necessary classes to navigation $('ul.level-1 > li > ul').addClass('level-2'); $('ul.le

我已经创建了一个下拉菜单,我在许多网站上使用过。由于某种原因,在这个应用程序()中,菜单会闪烁,并且在Firefox和IE8-10中都放错了位置。它在Chrome和Safari中工作良好。知道为什么会这样吗?我认为这是一个CSS的问题,但我一辈子都搞不清楚

谢谢你的帮助

以下是我在菜单上使用的JS:

//Add necessary classes to navigation
$('ul.level-1 > li > ul').addClass('level-2');
$('ul.level-1 ul > li ul').addClass('level-3');
$('li:has(> ul)').addClass('has-subnav');

// Mobile Navigation
$('body').addClass('js');
var $menu = $('#menu'),
$menulink = $('.menu-link'),
$menuTrigger = $('.has-subnav > a');

$menulink.click(function(e) {
    //e.preventDefault();
    $menulink.toggleClass('active');
    $menu.toggleClass('active');
});

$menuTrigger.click(function(e) {
    if ( $(window).width() < 768) {
       e.preventDefault();
    }       

    var $this = $(this);
    $this.toggleClass('active').next('ul').toggleClass('active');
}); 

//Remove active class on desktop version
$('ul.level-1 > li').hover(
    function () {
        $('ul.level-1 > li').removeClass('active');
        var $this = $(this);
        if( $this.children('ul.level-2').css('display') != 'none' )  { 
            $this.addClass('active');
        } else {
            $this.removeClass('active');
        }
    },
    function () {
        var $this = $(this);
        if( $this.children('ul.level-2').css('display') != 'none' )  { 
            $this.addClass('active');
        } else {
            $this.removeClass('active');
        }
    }
);
//向导航添加必要的类
$('ul.level-1>li>ul').addClass('level-2');
$('ul.level-1ul>li-ul').addClass('level-3');
$('li:has(>ul')).addClass('has-subnav');
//移动导航
$('body').addClass('js');
变量$menu=$(“#menu”),
$menulink=$('.menu-link'),
$menuTrigger=$('.has subnav>a');
$menulink.单击(函数(e){
//e、 预防默认值();
$menulink.toggleClass('active');
$menu.toggleClass('active');
});
$menuTrigger.单击(函数(e){
如果($(窗口).width()<768){
e、 预防默认值();
}       
var$this=$(this);
$this.toggleClass('active')。next('ul')。toggleClass('active');
}); 
//删除桌面版本上的活动类
$('ul.level-1>li')。悬停(
函数(){
$('ul.level-1>li').removeClass('active');
var$this=$(this);
if($this.children('ul.level-2').css('display')!='none'){
$this.addClass('active');
}否则{
$this.removeClass('active');
}
},
函数(){
var$this=$(this);
if($this.children('ul.level-2').css('display')!='none'){
$this.addClass('active');
}否则{
$this.removeClass('active');
}
}
);

我发现了问题所在。我有一行杂乱无章的CSS代码,不知何故添加了这些代码,并说当你在导航中的
a
属性上悬停时应用某些样式。这些带有
li
悬停样式/JS的样式相互冲突,并导致了一些问题。我删除了CSS,我们都很好

比css我怀疑它的问题,从Js代码是用于菜单悬停。那么你有没有使用过js代码来实现菜单功能?我正在使用一些js。如果我把它贴在上面会有帮助吗?是的,那会更好:)只是添加了它。谢谢我需要这个类的css
活动的
,你能提供这个吗