【发布时间】:2018-03-01 12:46:28
【问题描述】:
我有一个带有类的 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 的字符串有关,但我不确定在其中放入什么以获得正确的结果。
【问题讨论】:
-
在这里查看第二个答案:stackoverflow.com/questions/16039708/… - 使用函数和正则表达式删除类
-
函数
removeClass在您的案例中查找 css class 'chapter[0-9]'