我试图从id元素中提取类toggleClass()
,例如:
$('#create a').click(function(){
$('#create div').toggleClass('active');
});
并且它并不想在分隔符上切换类active
。
这是按钮:
<a href="#create" id="create" data-toggle="tab">
<i class="fa fa-plus" aria-hidden="true"></i>
</a>
以下是我尝试切换active
的课程:
<div class="" id="create">
<!-- Content Here -->
</div>
答案 0 :(得分:0)
这里有两个问题。首先#create a
将不匹配任何元素,因为a
元素具有该id,而不是它的子元素。您可以使用a#create
或#create
。
其次,当create
属性在页面中必须唯一时,您a
和div
上的id
ID都已重复。您需要使用其他id
值来标识div
元素。
考虑到这些问题,请尝试以下方法:
$('#create').click(function(){
$('#content').toggleClass('active');
});
.active { color: red; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#create" id="create" data-toggle="tab">
<i class="fa fa-plus" aria-hidden="true">+</i>
</a>
<div class="" id="content">
Content here...
</div>
答案 1 :(得分:0)
首先,您不应该为多个元素使用相同的ID。
其次,选择器不会像你想象的那样工作:$('#create a')
表示&#34;元素内的所有A元素,id = create&#34;。只需使用$('#create')
即可。您可以使用$('a#create')
,这意味着&#34;具有id = create&#34;的A元素,但这是必要的,因为id应始终是唯一的。
答案 2 :(得分:-1)
确保在DOM中提供唯一的ID。
然后你的选择器出错了。
他们应该
$('#create').click(function(){
$('#creatediv').toggleClass('active'); // given new id to div
});
没有必要提到div,因为你手头有id。