我很困惑为什么这个javascript没有改变我的h2元素的颜色
我试图根据早期选择的男性或女性为所有strong和h2标签上色。我已经对以前的li和a标签做了这样的操作,所以我不明白为什么这样做不起作用。我必须去买一个橡皮鸭b/c我被困了一段时间,这似乎太容易了 CSS: Javascript传入男性/女性字符串,此代码确实被击中b/c其他内容被着色:我很困惑为什么这个javascript没有改变我的h2元素的颜色,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我试图根据早期选择的男性或女性为所有strong和h2标签上色。我已经对以前的li和a标签做了这样的操作,所以我不明白为什么这样做不起作用。我必须去买一个橡皮鸭b/c我被困了一段时间,这似乎太容易了 CSS: Javascript传入男性/女性字符串,此代码确实被击中b/c其他内容被着色: function SetGender(e) { sessionStorage.gender = e; if (sessionStorage.gender == "male") {
function SetGender(e)
{
sessionStorage.gender = e;
if (sessionStorage.gender == "male") {
document.getElementById("category-list").className += " colorBlue";
//..many other class/id color changes
//Change H2/Strong tag color color
$("#adviceBodyDisplay h2").addClass("colorBlue");
}
else if(sessionStorage.gender=="female") {
document.getElementById("category-list").className += " colorPink";
//..many other class/id color changes
//Change H2/Strong tag color color
$("#adviceBodyDisplay h2").addClass("colorPink");
}
}
HTMLSUFF:
<div id="adviceBodyDisplay">
<h2>Real Life Example 1:</h2>
<p>other text</p>
</div>
没有ID类别列表中的元素,所以Javascript在进行颜色更改之前就崩溃了为什么要混合.className+=native和.addClassjQuery?为什么不选一个呢?旁注,你应该有一个空格才行!重要的是你能提供一个,请?顺便说一句-给你的类名一个良好的语义含义。。colorPink和colorBlue很可怕-如果你必须为色盲的人更改CSS类,该怎么办?最好说maleDecoration和femaleDecoration或其他有意义的东西。如果我删除了对您发布的HTML中不存在的元素的引用。浏览器控制台中有错误吗?
<div id="adviceBodyDisplay">
<h2>Real Life Example 1:</h2>
<p>other text</p>
</div>