我试图检查一个HTML元素是否有一个类,如果有,然后用jQuery运行一个函数。我的代码仅在元素没有多个类时才有效。我相信我需要使用.hasClass()
方法,但我无法弄明白。
var pageClass = $("body").attr('class');
switch (pageClass) {
case ("page1"):
$('h1').html('heading1');
break;
case ("page2"):
$('h1').html('heading2');
break;
default:
$('h1').html('default');
}
答案 0 :(得分:5)
使用.hasClass()功能。
if($("body").hasClass("page1")){
$("h1").html("heading1");
}
else if($("body").hasClass("page2"){
$("h1").html("heading2");
}
else {
$("h1").html("default");
}
答案 1 :(得分:3)
这可以通过选择器来解决:
$('h1').html('default');
$('body.page1 h1').html('heading1');
$('body.page2 h1').html('heading2');
答案 2 :(得分:1)
我会这样做......
$(document).ready(function() {
var element = $("body");
var classesCollection = {
'page1': 'heading1',
'page2': 'heading2'
};
for (var propertyName in classesCollection) {
var propertyValue = classesCollection[propertyName];
if (element.hasClass(propertyName)) element.html(propertyValue);
else element.html('default');
}
});