加入收藏 | 设为首页 | 会员中心 | 我要投稿 商洛站长网 (https://www.0914zz.com/)- AI应用、CDN、边缘计算、云计算、物联网!
当前位置: 首页 > 编程开发 > Python > 正文

django – 在Bootstrap中激活点击的选项卡

发布时间:2021-01-17 12:17:02 所属栏目:Python 来源:互联网
导读:我正在使用Django和与Django集成的Bootstrap.这是导航栏的 HTML代码: div class=navbar navbar-default navbar-fixed-top role=navigation div class=container div class=navbar-header button type=butt

我正在使用Django和与Django集成的Bootstrap.这是导航栏的 HTML代码:

<div class="navbar navbar-default navbar-fixed-top" role="navigation">
  <div class="container">
    <div class="navbar-header">
      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <a class="navbar-brand" href="#">Project name</a>
    </div>
    <div class="navbar-collapse collapse">
      <ul class="nav navbar-nav">
        <li class="active"><a href="#">Home</a></li>
        <li ><a href="#">About</a></li>
        <li><a href="#">Contact</a></li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown">Games <span class="caret"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="#">RacingDNA</a></li>
            <li><a href="#">Skater Game</a></li>

          </ul>
        </li>
      </ul>
    </div><!--/.nav-collapse -->
  </div>
</div>

我也写了一个活动导航栏的CSS.在这里,只有一个导航栏是活动的.我想让点击的导航栏激活,因此应用我的CSS.我的CSS工作完美的主动导航栏和这种情况只有一个.

我googled并找到一个解决方案来添加这个jQuery:

$('.nav.navbar-nav > li').on('click',function (e) {
e.preventDefault();
$('.nav.navbar-nav > li').removeClass('active');
$(this).addClass('active');

});

现在这里是我被卡住的地方.我不知道在哪里写这个jQuery.

我把这个文件放在static / js文件夹中,并命名为这个代码nav-bar.js.但是,没有改善.我在哪里错了,我在哪里犯错?

解决方法

当您的链接的href属性与href =“#”不同时,此解决方案不起作用.为什么因为每次点击链接都会触发对服务器的请求.在你的JS代码中,你添加了preventDefault()方法,以避免这种基本行为,但是我认为这不是真的你的目的,为此目的不是吗?

要处理这种功能,您可以通过添加如下内容来更新模板代码:

base.html文件

<div class="collapse navbar-collapse" id="tn-navbar-collapse">
    <ul class="nav navbar-nav">
        <li class="{% if nbar == 'home' %}active{% endif %}">
            <a href="/">HOME</a>
        </li>
        ...
    </ul>
</div>

views.py

def your_view(request):
    ...
    return render(request,{'nbar': 'home'},"yourtemplate.html")

通过这种方式,您无需使用javascript来管理此功能.

(编辑:商洛站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读