我有一个网站菜单,在有子菜单的项目旁边显示向下箭头。这个箭头()包含在如下所示的跨度中:<span class="h-open-icon>▼</span>
,我想将其更改为:<span class="h-open-icon>▲</span>
(此字符:▲)
在Javascript中,我尝试使用以下代码(较大脚本的一部分)-它适用于更改纯字母数字文本(例如innerHTML === "text"
等)-当子菜单打开时将其更改为向上箭头:
let hstr = button.querySelector('.h-open-icon');
if (hstr.innerHTML === "\&\#9660\;") {
hstr.innerHTML = "\&\#9650\;";
} else {
hstr.innerHTML = "\&\#9660\;";
}
但这是行不通的。我认为这一定与转义字符有关,但我所能找到的只是如何删除它们的帮助,而不是保留它们。我只需要修改#后面的数字。谢谢。
发布于 2021-02-03 02:11:10
您可以通过将符号包含在JS中来避开这个问题:
let hstr = document.getElementById("toggle");
hstr.onclick = function(){
if (hstr.innerHTML == "▼") {
hstr.innerHTML = "▲";
} else {
hstr.innerHTML = "▼";
}
}
<button id=toggle>▼</button>
https://stackoverflow.com/questions/66015142
复制相似问题