当前位置: 首页 > 面试题库 >

下拉菜单和ajax窗口之间的jquery冲突

壤驷康裕
2023-03-14
问题内容

我有一个jQuery下拉菜单和一个模态窗口,它是ajax的触发器。当您单击ajax的链接时,就会出现问题,当您关闭它时,下拉列表将不再起作用。因此,当您不单击ajax时,下拉列表将起作用。单击链接并将其关闭时,下拉菜单未显示下拉菜单。

试试看,源代码在这里:

codepen.io/riogrande/pen/NxZLaQ

逐步重现:

  1. 将鼠标悬停在最右边的“ Lorem”上,然后会出现一个下拉菜单。

  2. 退出鼠标悬停,然后单击标题为“单击此处获取ajax”的链接

  3. 点击“ X”退出ajax弹出窗口

  4. 步骤1不再起作用。


问题答案:

您可以在鼠标悬停时使用单独的fadeInfadeOut函数而不是单个函数fadeToggle,它将解决此问题:

$(".menu-dropdown").hover(
  function(e) {
    if ($(window).width() > 943) {
      $(this).children("ul").stop(true,false).fadeIn(150);
      e.preventDefault();
    }
  },
  function(e) {
    if ($(window).width() > 943) {
      $(this).children("ul").stop(true,false).fadeOut(150);
      e.preventDefault();
    }
  }
);

CodePen 在这里。



 类似资料:
  • 我有一个下拉菜单,使用jQuery在点击时切换类。所以当我单击时,它的父级 变为活动的,从而使用CSS显示它的子菜单。我的问题是,这里的的目的是要删除任何已经打开的子菜单中的类。 问题是当我再次单击时,它并没有关闭当前子菜单,即它似乎没有切换,只是在添加类。 这是CSS。

  • 本文向大家介绍下拉菜单的级联操作(ajax),包括了下拉菜单的级联操作(ajax)的使用技巧和注意事项,需要的朋友参考一下 在开发中常常会遇到菜单的级联操作,比如:国家、城市、乡镇的选择等。当选中某个国家的时候,后面的菜单会把该国家内的城市罗列出来,当选中城市的时候,后面的菜单会把对应的乡镇列出来。  解决这种菜单的级联操作的办法,我理解的有两种: ①使用js来实现,把页面所用到的级联数据放到js

  • 问题内容: 我的HTML页面上有2个下拉列表:第一个下拉列表包含数据库列名称,第二个下拉列表将基于该数据库列名称进行填充, 即 我有一个带有字段的表:以下是条目; 因此,我的第一个下拉列表将包含列名称,即“ Degree”和“ City”。 如果我选择“学位”,则第二个下拉列表将填充“ BS”和“ MS”;如果我选择“城市”,则第二个下拉列表应选择“纽约”,“波士顿”和“芝加哥”。 我该如何进行实

  • 我正在Silverlight中构建应用程序,现在我遇到了事件问题。在应用程序中,我必须绘制多边形,其中每个多边形 其中鼠标左键事件应该是在点击位置添加图像,鼠标右键事件应该是带有单个菜单项的上下文菜单。在菜单项上点击应该会显示一些简短的信息。 这是我有问题的地方。当我点击上下文菜单中的某个项目时,如果该菜单项仍然在多边形代码上,还可以检测鼠标左键事件并添加图像。 我想不添加图像时,菜单项被点击,只

  • 本文向大家介绍BootStrap 下拉菜单点击之后不会出现下拉菜单(下拉菜单不弹出)的解决方案,包括了BootStrap 下拉菜单点击之后不会出现下拉菜单(下拉菜单不弹出)的解决方案的使用技巧和注意事项,需要的朋友参考一下 最近学到Bootstrap下拉菜单,学懂了教程内容之后自己敲一个点击按钮底下弹出下拉菜单的小demo,写完代码发现运行之后点击按钮没反应,下拉菜单弹不出来,对照教程感觉代码没错