在导航中删除和添加数据属性
Remove and add data attributes on navigation
我想在我的网站上创建一个带有自定义导航的 Bootstrap 轮播。所以我将指示器更改为三个块,其中包含一些文本和一个按钮。
<div class="container">
<div class="row">
<ul class="slide-nav">
<li data-target="#carousel" data-slide-to="0" class="col-sm-4 slide-first">
<div class="nav-element">
<i class="fa fa-star symbol-big"></i>
<h3>Leistungen</h3>
<a href="#" class="btn btn-primary btn-block">Mehr erfahren</a>
</div>
</li>
<li data-target="#carousel" data-slide-to="1" class="col-sm-4 slide-middle active">
<div class="nav-element">
<i class="fa fa-thumbs-up symbol-big"></i>
<h3>Ihre Vorteile</h3>
<a href="#" class="btn btn-primary">Mehr erfahren</a>
</div>
</li>
<li data-target="#carousel" data-slide-to="2" class="col-sm-4 slide-last">
<div class="nav-element">
<i class="fa fa-users symbol-big"></i>
<h3>Unser Team</h3>
<a href="#" class="btn btn-primaryk">Mehr erfahren</a>
</div>
</li>
</ul>
</div>
</div>
导航工作正常,但是当我想单击按钮访问 link 时,由于 "data-target" 而无法工作。如果我删除它,我可以单击 link。
现在我想实现的是,当我单击具有活动 class 的 "li" 元素时,"data-attribute" 将被删除,而当我单击另一个元素时,它将被删除再次添加。
或者有更好的方法吗?
可能重复
你可以阅读并利用这个
Add & remove active class from a navigation link
sample jsfiddleenter code here
sample fiddle
我现在解决了。
$('.slide-nav li').click(function () {
$(this).removeAttr('data-target');
$(this).attr('data-target', '#carousel');
$(".active").attr('data-target', '');
});
唯一可能缺少的是,如果我可以单击 link 并直接进入它,那就太好了 - 而不是首先必须单击 li 元素才能访问 link..
我想在我的网站上创建一个带有自定义导航的 Bootstrap 轮播。所以我将指示器更改为三个块,其中包含一些文本和一个按钮。
<div class="container">
<div class="row">
<ul class="slide-nav">
<li data-target="#carousel" data-slide-to="0" class="col-sm-4 slide-first">
<div class="nav-element">
<i class="fa fa-star symbol-big"></i>
<h3>Leistungen</h3>
<a href="#" class="btn btn-primary btn-block">Mehr erfahren</a>
</div>
</li>
<li data-target="#carousel" data-slide-to="1" class="col-sm-4 slide-middle active">
<div class="nav-element">
<i class="fa fa-thumbs-up symbol-big"></i>
<h3>Ihre Vorteile</h3>
<a href="#" class="btn btn-primary">Mehr erfahren</a>
</div>
</li>
<li data-target="#carousel" data-slide-to="2" class="col-sm-4 slide-last">
<div class="nav-element">
<i class="fa fa-users symbol-big"></i>
<h3>Unser Team</h3>
<a href="#" class="btn btn-primaryk">Mehr erfahren</a>
</div>
</li>
</ul>
</div>
</div>
导航工作正常,但是当我想单击按钮访问 link 时,由于 "data-target" 而无法工作。如果我删除它,我可以单击 link。
现在我想实现的是,当我单击具有活动 class 的 "li" 元素时,"data-attribute" 将被删除,而当我单击另一个元素时,它将被删除再次添加。
或者有更好的方法吗?
可能重复
你可以阅读并利用这个
Add & remove active class from a navigation link
sample jsfiddleenter code here
sample fiddle
我现在解决了。
$('.slide-nav li').click(function () {
$(this).removeAttr('data-target');
$(this).attr('data-target', '#carousel');
$(".active").attr('data-target', '');
});
唯一可能缺少的是,如果我可以单击 link 并直接进入它,那就太好了 - 而不是首先必须单击 li 元素才能访问 link..