【问题标题】:jQuery Dropdown Menu with ID's Bug带有 ID 错误的 jQuery 下拉菜单
【发布时间】:2018-06-12 22:27:25
【问题描述】:

请看http://www.projects.iasad.me/services.html

问题:当我尝试从另一个页面(即主页、关于、联系人等)访问我们的服务下拉菜单时,下拉菜单无法正常工作。示例:假设我想从主页访问 Our Services 子菜单的 Corporate Advisory,但它会转到 Fixed Income Trading 子菜单我们的服务。为什么会这样?以下是代码:

$(function(){

      $(".dropdown-menu .menu2").click(function(){
       
         $("#corporate-advisory").show();
         $("#get-in-touch").css({
             'margin-top':'20%'
         });
         $("#fixed-income-trading").hide();
         $("#investment-management").hide();
     });  
    
     $(".dropdown-menu .menu3").click(function(){
           
         $("#investment-management").show();
         $("#get-in-touch").css({
             'margin-top':'20%'
         });
             
         $("#fixed-income-trading").hide();
         $("#corporate-advisory").hide();
     });  
  
     $(".dropdown-menu .menu1").click(function(){

         $("#fixed-income-trading").show();
         $("#corporate-advisory").hide();
         $("#investment-management").hide();
     }); 
    
});

请帮助我。 问候。

【问题讨论】:

  • 我无法重现这个问题,如果它真的是“紧急的!”那么我建议你在另一个页面上做和雇用某人。

标签: javascript jquery html css drop-down-menu


【解决方案1】:

如果此 jQuery 代码仅包含在服务页面中,则单击事件只会在该页面上时触发;因此,为什么您总是被引导到“固定收益交易”部分。

至于浏览器滚动;

<li><a  class="menu1 menu" href="services.html#fixed-income-trading">Fixed income</a></li>

链接的#fixed-income-trading 部分会将浏览器移动到ID 为“fixed-income-trading”的页面的一部分。

但是,如果您使用 jQuery 隐藏不需要的部分,则不需要这样做?

【讨论】:

  • 嗨,我将 jQuery 代码写入一个名为 scripts.js 的文件中,并将该文件链接到所有页面。在 services.html 页面中有三个部分,当用户单击下拉选项时,我只需要显示一个部分。这就是为什么我必须隐藏拖曳部分并每次点击显示一个部分。默认情况下,固定收益交易部分是可见的。
  • 我建议使用查询字符串来传递您要查看的部分的名称,例如href="services.html?section=FA" 或 href="services.html?section=CA" 然后,当服务页面加载时,您可以检测查询字符串,并隐藏/显示相关部分。 gomakethings.com/…
  • 好的,我应该把查询字符串放在哪里?在 jQuery 代码或下拉菜单中?请给我一个提示。
  • 在链接中
  • 固定收入
  • 抱歉,我不明白使用查询字符串的原因。我的问题是当我从 services.html 访问下拉菜单时,我的代码很好。但是当我尝试从另一个页面而不是 services.html 访问下拉菜单链接时,它不起作用。我只想知道为什么会这样?
  • 猜你喜欢
    相关资源
    最近更新 更多
    热门标签