【问题标题】:bootstrap navbar class=active change when coming from a separate page引导导航栏类=来自单独页面时的活动更改
【发布时间】:2013-12-21 20:35:40
【问题描述】:

我一直在尝试解决类似情况的方法,但到目前为止都没有奏效。

问题来了,我总共有 2 个 html 文件。在我的导航栏上,我有 4 个选项。其中 3 个指的是同一页面(索引)上的 id,第 4 个指的是单独的页面。现在从单独的页面返回到索引,活动菜单项不是正确的“活动”菜单项。就像我在支持页面上单击“关于”一样,活动菜单项是“主页”。或者,如果我单击“联系人”,活动菜单项将变为“关于”。出现的内容是正确的。但活动菜单项不是。

来自index.html 文件:

<div class="navbar-collapse collapse">
    <ul class="nav navbar-nav navbar-right">
        <li class="current"><a href="#home">Home</a></li>
        <li><a href="#about">About</a></li>
        <li class="support" ><a href="support.html">Support</a></li>
        <li ><a href="#contact">Contact</a></li>
</ul>
</div>

这是来自support.html

<div class="navbar-collapse collapse">
    <ul class="nav navbar-nav navbar-right">
        <li><a href="index.html#home">Home</a></li>
        <li><a href="index.html#about">About</a></li>
        <li class="current"><a href="#support">Support</a></li>
        <li ><a href="index.html#contact">Contact</a></li>
    </ul>
</div>

这是我尝试但没有结果的解决方案之一: https://stackoverflow.com/a/11539359

JS不是我的强项,非常感谢你的帮助!

【问题讨论】:

  • 你能提供一个 jsfiddle,或者你试过这个的链接吗?你试过的js是什么?
  • @RaunakKathuria 这里是 website im trying to fix 点击支持,然后让医生查看问题
  • 你能在一个地方加载所有的 javascript,每当我加载页面时,它都会给出错误 Uncaught ReferenceError: jQuery is not defined, load all on head on at the end
  • @RaunakKathuria 是的,所有的 javascript 都在索引的末尾以更快地加载页面。谢谢你的帮助,我忘了我问过这个问题,我还在想办法解决这个问题跨度>
  • 请检查答案并查看其中包含的文件

标签: javascript jquery twitter-bootstrap navbar


【解决方案1】:

例如,您加载脚本的方式存在很多问题

 $(document).ready(function() {
        $('#ind').cycle({
            fx: 'fade' // choose your transition type, ex: fade, scrollUp, shuffle, etc...
        });
    });

你在加载 jquery 之前调用它,所以它给出 $ 是未定义的错误,所以解决方案是在最后移动所有脚本,并且菜单处理程序也有一个内联脚本,将其移至文档就绪函数

我已将修复包含在以下文件HTML Zip files 中,您会发现所有 JS 都已移至末尾。它现在对我来说工作正常

还有一件事使您的接触高度与其他容器相同,或者从医师部分删除额外的边距/填充

【讨论】:

  • 我看到你添加了新的 js 源,直到现在我才明白你所说的关于在正文末尾加载 js 的内容。谢谢!我要去研究你包含的js(jquery_002和jquery-1)。
  • 我没有包含任何内容,我只是保存了你的网页,它是从那里保存的。唯一的问题是js没有正确加载,甚至在加载之前就被使用了
  • 你为什么要分开js源呢?与 support.html 一样,支持 js 源位于 support_files 文件夹中,但对于 Phamily = Physicians + Family_files.html,js 源位于 Pamily = Physicians + Family_files 文件夹中
  • 这只是一个演示,因为当您从浏览器保存文件时,它会将所有文件加载到单独的目录中,所以我首先保存了索引文件,然后是支持文件。不要让你的页面完全像这样,只需将所有 javascript 移动到结束。除了在同一个地方移动 js 之外,我没有改变其他任何东西
  • 如果您遇到任何问题,请告诉我,否则如果它解决了您的疑问,请批准答案:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-25
  • 2016-08-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多