我想在2个不同的div上应用slimScroll功能。一次只有一个div处于活动状态。 所以,我使用变量来获取当前选项卡名称。当用户点击评论时,slimscroll将应用于#reviews,如果点击了图库,则应切换到图库。
html代码:
<ul class="nav nav-pills nav-justified">
<li class="active"><a href="#reviews" data-toggle="tab">Reviews</a></li>
<li><a href="#gallery" data-toggle="tab">Gallery</a></li>
</ul><!-- tabs -->
<div class="tab-content">
<div class="tab-pane active" id="reviews">
reviews
</div>
<div class="tab-pane" id="gallery">
gallery
</div>
</div>
jquery代码:
$(document).ready(function(){
$('.nav-pills li a').on('click',function(){
var current = ($(this).text());
alert(current);
});
$('article').slimScroll({
position: 'right',
height: '370px',
railVisible: true,
alwaysVisible: true
});
});
答案 0 :(得分:0)
这样做:
$(document).ready(function(){
$('.nav-pills li a').on('click',function(){
var current = $(this).attr("href").split('#')[1];
$(this).closest('ul').find('li').removeClass('active');
$(this).parent().addClass('active');
//$('div.tab-pane').removeClass('active');
//$('div#'+current).addClass('active');
alert(current);
$('#'+current).slimScroll({
position: 'right',
height: '370px',
railVisible: true,
alwaysVisible: true
});
或:
$(document).ready(function(){
$('.nav-pills li a').on('click',function(){
var current = $(this).attr("href").split('#')[1];
$(this).closest('ul').find('div.tab-content').find('div.tab-pane').removeClass('active');
$('div#'+current).addClass('active');
alert(current);
$('#'+current).slimScroll({
position: 'right',
height: '370px',
railVisible: true,
alwaysVisible: true
});
答案 1 :(得分:0)
$('.nav-pills li a').on('click', function(e){
e.preventDefault();
$(this).parents('li').siblings().each(function() {
$(this).removeClass('active');
$($(this).find('a').attr('href')).unbind('slimscroll');
});
$($(this).attr('href')).slimScroll({
position: 'right',
height: '370px',
railVisible: true,
alwaysVisible: true
});
});