我有一个div,我需要根据用户与之交互的内容切换出来。
<div class="book-chapter-name chapter2" data-lhg="chapter-info">
<span>Chapter String Here</span>
</div>
我在jQuery对象中有当前的div,并且已经找到了:
$('div[class*="chapter"]')
我想要做的是删除现有的类并插入一个新类,以便chapter2
成为chapter3
var chapterString = $('#page'+page).attr('data-lhg-chapter'),
chapterNumber = $('#page'+page).attr('data-lhg-chapter-number'),
chapterInfo = $('[data-lhg="chapter-info"]');
if($('div[class*="chapter"]')){
$('div[class*="chapter"]').removeClass('chapter[0-9]');
}
$(chapterInfo).text(chapterString).addClass('chapter'+chapterNumber);
这似乎不起作用,我认为这与传递给removeClass
的字符串有关,但我不知道该放什么来获得正确的结果。
答案 0 :(得分:1)
您可以删除所有类,并使用更改的编号重新添加它们。
$('div[class*="chapter"]').removeClass();
然后
$(chapterInfo).text(chapterString).addClass("book-chapter-name").addClass('chapter'+chapterNumber);
答案 1 :(得分:1)
$('div[class^="chapter"]')
[attribute^=value]
div[class^="https"]
选择<div>
属性值以class
开头的每个"chapter"
元素