Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.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
Javascript 带“的选择器;开放式;属性_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 带“的选择器;开放式;属性

Javascript 带“的选择器;开放式;属性,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我使用jquery选项卡slider创建一个滑块,当点击它的手柄时,它将从屏幕的一侧滑出。我需要将样式应用于该div中的子元素,但是它必须仅在该div打开时应用。div的类名为“tab slider”,打开时为“tab slider open”。我的问题是,是否可以创建一个仅在滑块打开时应用于该元素的选择器?我还可以补充一点,需要设置样式的元素比这个父div低几个级别 我正在寻找的选择器类似于: #tab-slider open #secondleveldiv #thirdleveldiv .e

我使用jquery选项卡slider创建一个滑块,当点击它的手柄时,它将从屏幕的一侧滑出。我需要将样式应用于该div中的子元素,但是它必须仅在该div打开时应用。div的类名为“tab slider”,打开时为“tab slider open”。我的问题是,是否可以创建一个仅在滑块打开时应用于该元素的选择器?我还可以补充一点,需要设置样式的元素比这个父div低几个级别

我正在寻找的选择器类似于:

#tab-slider open #secondleveldiv #thirdleveldiv .element
在您的示例中:

.tab-slider.open #secondleveldiv #thirdleveldiv .element{
    /* This is an extremely specific selector. 
       Would .open #thirdleveldiv .element or even 
       .open .element work? Try to keep things only as specific 
       as they need to be. */
}

根据您的问题,当
选项卡滑块
打开时,您希望为该元素创建一个选择器

这是可能的

您可以使用
.tab滑块。打开

记住:

如果类名处于同一级别

<div class="tab-slider open">
中间没有空隙

如果类名处于不同的级别

<div class="tab-slider">

   <div class="open">

    </div>

</div>
如果子元素是
p
,则可以使用CSS或Jquery,例如:

.tab-slider.open p {color:red;}
使用Jquery

$('.tab-slider.open p').addClass('my-class');

是的,这是完全可能的,尽管类选择器是
。在
选项卡滑块
打开
选项卡滑块前面需要它。打开
表示具有两个类名的元素(请注意,第二个点前面没有空格)。如果您字面上是指“打开属性”,则需要使用属性选择器:
选项卡滑块[打开]
。但如果您的容器具有这样的属性,例如:
.tab-slider .open
.tab-slider.open p {color:red;}
$('.tab-slider.open p').addClass('my-class');