登录  /  注册

如何解决bootstrap导航条不跳转的问题

藏色散人
发布: 2020-12-04 09:00:48
原创
3176人浏览过

bootstrap导航条不跳转的解决办法:1、使用“$('#mytabs a').click(function (e){...}”方式;2、使用“data-toggle”标记;3、通过“window.location”实现跳转即可。

如何解决bootstrap导航条不跳转的问题

本教程操作环境:Windows7系统、bootstrap3版,该方法适用于所有品牌电脑。

推荐:《bootstrap视频教程

最近在学习bootstrap,准备做一个个人网站的主页。前端就准备采用bootstrap来做了,因为,bootstrap确实很漂亮,也很流行,有了问题也方便通过百度或者谷歌找到答案。

我的页面大概是这个样子:

1e97bbbf2249db3a002785d2a80a51b.png

主要就是采用bootstrap的navbar组件设计了一个自己的导航条,以为很简单的事情,结果最后导航条没有工作。

问题:

1、导航条不按照点击切换相应tab的active状态。链接能够正常跳转,但是始终是Home处于激活状态。

对于这个问题首先百度了一下,可能的原因在于jquery库引用不正确,jquery库的引用一定要在bootstrap库之前,因为bootstrap依赖jquery库工作。

但是我检查了一遍自己的代码后,发现我的引用顺序并没有问题。

接下来,我在bootstrap官网中找到这样一句话(我使用的是bootstrap3)

43120828fcaaa95d3085dd600067c68.png

截图地址:https://v3.bootcss.com/javascript/#tabs

这里表明有两种方法可以激活tab,第一种是通过如下的javascript代码:

$('#myTabs a').click(function (e) {
  e.preventDefault()
  $(this).tab('show')})
登录后复制

第二种是通过"data-toggle"标记

<ul class="nav nav-tabs" role="tablist">
    <li role="presentation" class="active"><a href="#home" aria-controls="home" role="tab" data-toggle="tab">Home</a></li>
    <li role="presentation"><a href="#profile" aria-controls="profile" role="tab" data-toggle="tab">Profile</a></li>
    <li role="presentation"><a href="#messages" aria-controls="messages" role="tab" data-toggle="tab">Messages</a></li>
    <li role="presentation"><a href="#settings" aria-controls="settings" role="tab" data-toggle="tab">Settings</a></li>
  </ul>
登录后复制

采用任意一种方法后,navbar active状态不随点击改变的问题解决了,但是发现导航条中也就是

    标记中所有标记的href属性都失效了,后来也是一顿搜索,发现,bootstrap把href属性当id处理,只链接到当前页面的位置,而外部跳转链接被屏蔽。

    参考:(https://stackoverflow.com/questions/16785264/jquery-syntax-error)

    2、解决了第一项问题后,结果发现navbar中的链接无法跳转到外部链接。

    正如前面提到,外部链接被屏蔽,后来只好想到通过js来实现跳转,因此,我把navbar的激活代码修改了一下,通过window.location来实现跳转。

    $(function () {
          $("#myBar li").click(function (e) {
            e.preventDefault()
            $(this).tab(&#39;show&#39;)      
            window.location.href = &#39;http://localhost:3000&#39; + $(this).children(&#39;a&#39;).attr(&#39;href&#39;)
          })
     })
    登录后复制

    这样才算解决了bootstap 导航条的问题。但总觉得应该有更好的解决方法,希望个为朋友给个建议吧。

    以上就是如何解决bootstrap导航条不跳转的问题的详细内容,更多请关注php中文网其它相关文章!

    智能AI问答
    PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
    相关标签:
    来源:php中文网
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
    作者最新文章
    最新问题
    关于CSS思维导图的课件在哪? 课件
    凡人来自于2024-04-16 10:10:18
    热门教程
    更多>
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号 技术交流群
    PHP中文网订阅号
    每天精选资源文章推送
    PHP中文网APP
    随时随地碎片化学习
    PHP中文网抖音号
    发现有趣的

    Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号