我在一个受控环境中工作,我无权编辑原始开发文件,只能尝试覆盖。我对 JavaScript 非常不熟练,但我想尝试在页面加载时切换输出显示。
我们有一个基于满足条件(即“查看”、“完成”、“通过”等)的进度跟踪功能。输出读取为简单的文本“进度:1/3”。我想切换这些值,并且一直在尝试使用简单的 unicode 来实现:
<li>
<span class="completionstatus">Progress: 0/2</span>
</li>
<li>
<span class="completionstatus">Progress: 1/2</span>
</li>
<li>
<span class="completionstatus">Progress: 2/2</span>
</li>
我不确定最好的 JS 解决方案是什么。我试过替换,取得了巨大的成功:
function strReplace(){
// Variables
var myStr = 'Progress: 0/2';
var newStr = myStr.replace(/Progress: 0\/2/g, "☆☆");
// Insert modified string in paragraph
document.getElementsByClassName("completionstatus")[0].innerHTML = newStr;
}
// Load
window.onload = function() {
strReplace();
};
但似乎应该有一个更有效的解决方案。这是我对 switch 的悲伤尝试:
function myFunction() {
var text;
var switchDisplay = document.getElementsByClassName("completionstatus")[0].innerHTML = text;
switch(switchDisplay) {
case "Progress: 0/2":
text = "☆☆";
break;
case "Progress: 1/2":
text = "★☆";
break;
case "Progress: 2/2":
text = "★★";
break;
default:
text = "error";
}
window.onload = function() {
myFunction();
}
};
这在各个层面都是错误的,包括我缺乏变量。
关于如何解决这个问题的任何想法?if 语句更好吗?我确信我正在尝试一个更智能的解决方案,但我可以手动为所有可能的进度比率添加案例。
米脂
牛魔王的故事
鸿蒙传说
相关分类