Javascript 使用js删除/添加CSS类
我想删除并在以后将类添加到这部分代码中:Javascript 使用js删除/添加CSS类,javascript,css,addclass,removeclass,Javascript,Css,Addclass,Removeclass,我想删除并在以后将类添加到这部分代码中: <tr class="promo-tag"> <td class="plan-za-razgovore-xs"></td> <td class="plan-za-razgovore-s"></td> <td class="promo plan-za-surfanje-m"&
<tr class="promo-tag">
<td class="plan-za-razgovore-xs"></td>
<td class="plan-za-razgovore-s"></td>
<td class="promo plan-za-surfanje-m"></td>
<td class="promo plan-za-surfanje-l"></td>
<td class="promo plan-za-zabavu-xl"></td>
<td class="promo plan-za-zabavu-xxl"></td>
<td class="promo plan-za-mlade"></td>
</tr>
请尝试以下操作:
document.querySelector(".plan-za-surfanje-m").classList.toggle("promo");
对于包含多个类的元素,您的语法是错误的,它不应该有空格。试试这个
$('.promo-tag .promo.plan-za-surfanje-m').removeClass( 'promo' );
jQuery具有此功能,无需使事情复杂化:
$('.plan-za-surfanje-m').removeClass('promo')
实际上,您可以在
.promo
中搜索.plan-za-surfanje-m
,但它是相同的元素
替换
$('.promo-tag .promo .plan-za-surfanje-m').removeClass( 'promo' )
借
或
使用此代码
$('.promo-tag').find('td').removeClass('promo');
.promo
和.plan-za-surfanje-m
中有一个空格,您需要将其删除
$('.promo-tag .promo.plan-za-surfanje-m').removeClass( 'promo' )
这将成功删除promo类,但为什么这部分代码:&
$('.promo-tag.promo').html('Promotivna-cijena').val()
在没有promo类的情况下仍然添加文本?选择器的格式不正确。当您在选择器中使用空格时,它将选择包含promo标签
或promo
的所有元素。要让选择器选择两个元素都存在的元素,请删除空格。但问题是,当我删除该空格时,没有一个元素得到文本“Promotivna cijena”。为什么呢?对不起,如果我的问题是愚蠢的,但我仍然是新的在这方面,并试图学习。我的坏,我现在看到的错误。如果要选择带有classpromo标记的表行,它看起来如下:$('.promo标记')
然后,您希望使用类promo
选择此元素的所有子元素,它看起来如下:$('.promo tag>.promo')
。您希望使用的完整代码如下:$('.promo-tag>.promo').html('Promotivna-cijena')
也尝试过。做了一些关于CSS选择器的研究,但是我的类仍然被这个函数删除,但是其他函数仍然在没有class.promo的情况下写入额外的文本。找不到任何其他解决方案,因此我使用了此$('.plan-za-surfanje-m.promo').html('.val()
$('.promo-tag .plan-za-surfanje-m').removeClass( 'promo' )
$('.promo-tag').find('td').removeClass('promo');
$('.promo-tag .promo.plan-za-surfanje-m').removeClass( 'promo' )