Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 导航栏鼠标悬停_Javascript_Jquery_Html_Css_Twitter Bootstrap - Fatal编程技术网

Javascript 导航栏鼠标悬停

Javascript 导航栏鼠标悬停,javascript,jquery,html,css,twitter-bootstrap,Javascript,Jquery,Html,Css,Twitter Bootstrap,我在Stackoverflow的另一个线程上得到了这段Javascript代码,但是当鼠标点击navbar标题和实际下拉列表之间时,会有大约1px的小间隙,然后下拉列表就会消失 我抓取了这段代码,好像有一个鼠标我希望它悬停,但是如果它是在移动没有鼠标,那么我希望用户点击打开下拉列表 //NAVBAR HOVER IF MOUSE, IF NOT CLICK $('body').on('mouseenter mouseleave', '.dropdown', function(e) {

我在Stackoverflow的另一个线程上得到了这段Javascript代码,但是当鼠标点击navbar标题和实际下拉列表之间时,会有大约1px的小间隙,然后下拉列表就会消失

我抓取了这段代码,好像有一个鼠标我希望它悬停,但是如果它是在移动没有鼠标,那么我希望用户点击打开下拉列表

  //NAVBAR HOVER IF MOUSE, IF NOT CLICK
  $('body').on('mouseenter mouseleave', '.dropdown', function(e) {
    var _d = $(e.target).closest('.dropdown');
    _d.addClass('show');
    setTimeout(function() {
      _d[_d.is(':hover') ? 'addClass' : 'removeClass']('show');
      $('[data-toggle="dropdown"]', _d).attr(
        'aria-expanded',
        _d.is(':hover')
      );
    }, 300);
  });
无论如何,我可以添加一个延迟,让用户有时间通过这个像素窗口吗

我对Javascript/JQuery不是很有经验,但我认为接近末尾的数字(300)将是一个超时,因为这似乎是函数的结尾,所以我将其增加到60000,但这没有任何区别


感谢您的帮助。如果这有什么不同,也可以在Bootstrap中进行开发。

对于延迟,可以使用[
Jquery.delay()][1]
方法。它只会在调用
之后发生的任何事件之前进行延迟

$( "div.first" ).slideUp( 300 ).delay(500).fadeIn(2000)

谢谢你的帮助

当您指向CSS Kosh Very时,我看了一下,添加了以下代码,解决了我的问题:

.dropdown > .dropdown-menu {
  margin: 0;
}

这已经解决了问题,感谢您的帮助。

请添加您的HTML和CSS。给我们一个机会来帮助你。@KoshVery谢谢你的帮助,我在CSS中添加了一个边距:0,这就解决了这个问题。我加上这句话是为了将来帮助任何人,谢谢你的帮助。我不知道你在说什么,我只是要求更新你的问题。很高兴看到你自己找到了解决方案。你提示我查看CSS,这让我觉得我可以删除CSS中的空白来解决我的问题。正如我在最初的问题中所说的,我是javascript新手,所以我想我试图将问题过于复杂化,并在javascript中修复它,而我可以简单地编辑CSS来解决问题。