Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么jquery addClass不更改css_Jquery_Css - Fatal编程技术网

为什么jquery addClass不更改css

为什么jquery addClass不更改css,jquery,css,Jquery,Css,我正在使用“活动”类设置通过css更改颜色 我的问题是,当我使用jquery添加/删除“活动”类时,为什么这些组件的颜色没有改变 $(document).ready(function() { $('#create_links_tab').click(function(){ $('#share_links_tab').removeClass("active"); $('#create_links_tab').addClass("active");

我正在使用“活动”类设置通过css更改颜色

我的问题是,当我使用jquery添加/删除“活动”类时,为什么这些组件的颜色没有改变

$(document).ready(function() {

    $('#create_links_tab').click(function(){
        $('#share_links_tab').removeClass("active");
        $('#create_links_tab').addClass("active");
        $('#share_links_panel').hide();
        $('#create_links_panel').fadeIn(1500);
    });

    $('#share_links_tab').click(function(){
        $('#create_links_tab').removeClass("active");
        $('#share_links_tab').addClass("active");
        $('#create_links_panel').hide();
        $('#share_links_panel').fadeIn(1500);
    }); 

});
html:


您正在更改
元素的类,而根据CSS,您应该更改
  • 元素中
    驻留的
    元素的类。

    必须将
    活动的
    类分配给
    li
    元素,在您的情况下,它是
    共享链接选项卡
    创建链接选项卡
    元素的父元素

    $(document).ready(function () {
    
        $('#create_links_tab').click(function () {
            $('#share_links_tab').parent().removeClass("active");
            $('#create_links_tab').parent().addClass("active");
            $('#share_links_panel').hide();
            $('#create_links_panel').fadeIn(1500);
        });
    
        $('#share_links_tab').click(function () {
            $('#create_links_tab').parent().removeClass("active");
            $('#share_links_tab').parent().addClass("active");
            $('#create_links_panel').hide();
            $('#share_links_panel').fadeIn(1500);
        });
    
    });
    

    演示:

    您需要的是在您的
    CSS
    、您的
    .active
    类中

    例如:

    .active {
      color: blue;
    }
    
    然后,使用jQuery,使用
    .toggleClass()
    方法切换类。像这样:

    $('.element').click(function(){
      $(this).toggleClass('active');
    });
    

    我为您创建的显示此行为的文件。

    您的标题说它不会更改,但您的描述说它会更改。你在问什么?@Arun P Johny-我已经定义了一个css规则。它在加载页面时应用不同的颜色。当我使用jquery添加或删除类时,它不会动态变化。我们可以看到一些CSS吗?那么它可能与使用开发人员工具来查看元素样式的来源有关。您可以制作一个JSFIDLE来演示这个问题吗?
    .active {
      color: blue;
    }
    
    $('.element').click(function(){
      $(this).toggleClass('active');
    });