javascript - 拆分选项卡标题不删除事件状态

标签 javascript jquery html css jquery-tabs

我正在尝试使用jQuery,CSS和HTML为我的网站创建一个TAB系统,当Tab标题全部组合时,我想将其工作,但是我想将它们分开,因此某些标签标题在一侧页面和其余部分位于相反的位置。一切看起来都很好,当我单击选项卡标题时,选项卡会发生变化,但标题不会删除前一个选项卡上的事件状态,这一定是因为我拆分了它们。

J查询:

jQuery(document).ready(function() {
            jQuery('.tabs .tab-links-left a').on('click', function(e)  {
                var currentAttrValue = jQuery(this).attr('href');

                // Show/Hide Tabs
                jQuery('.tabs ' + currentAttrValue).show().siblings().hide();

                // Change/remove current tab to active
                jQuery(this).parent('li').addClass('active').siblings().removeClass('active');

                //My added code
                jQuery('.tabs .tab-links-right').siblings().removeClass('active');

                e.preventDefault();
            });
        });



        jQuery(document).ready(function() {
            jQuery('.tabs .tab-links-right a').on('click', function(e)  {
                var currentAttrValue = jQuery(this).attr('href');

                // Show/Hide Tabs
                jQuery('.tabs ' + currentAttrValue).show().siblings().hide();


                // Change/remove current tab to active
                jQuery(this).parent('li').addClass('active').siblings().removeClass('active');

                //My added code
                jQuery('.tabs .tab-links-left li').siblings().removeClass('active');

                e.preventDefault();
            });
        });

这是标题的html

               <ul class="tab-links-left" >
                    <li class="active"><a href="#tab1">Home</a></li>
                    <li><a href="#tab2">Gallery</a></li>
                    <li><a href="#tab3">Services</a></li>


                </ul>

                <ul class="tab-links-right" >

                    <li><a href="#tab4">Testimonials</a></li>
                    <li><a href="#tab5">Contact</a></li>

                </ul>

最佳答案

你的问题是对面的标签没有

.siblings()

另一边。

我建议你给所有的标签一个类

<li class="tab">

然后在单击选项卡时只需执行以下操作:

jQuery('.tab').removeClass('active'); //Remove the active state from all tabs
jQuery(this).parent('li').addClass('active'); //Add the active state to the clicked tab

关于javascript - 拆分选项卡标题不删除事件状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30032666/

相关文章:

javascript - 使用 jQuery 的 .innerHTML 属性插入输入框

javascript - HTML/Javascript onchange 与 onsubmit 问题

javascript - 如何在 JavaScript 中清空(重置)输入类型电子邮件后用空格填充(in.value =""不起作用)

javascript - 正则表达式:匹配所有字符串但捕获两个符号之间的组

javascript - Chrome 中的 Div 位置与其他浏览器不同

jquery - 获取 jquery DOM 对象的整个 HTML 的字符串表示形式

javascript - live addEventListener 鼠标输入

php - 使用查询获取id

javascript - 使用多个选择器?

javascript - jQuery "show/hide div on click"和 "click outside to hide"不能一起工作