gpt4 book ai didi

javascript - 尝试在 div 中引用没有 id 的 header

转载 作者:行者123 更新时间:2023-11-28 06:06:00 24 4
gpt4 key购买 nike

我实际上是在创建一个外观简单的进度条。我有 4 个部分,每个部分上方是进度条。例如,在第 2 部分中,进度条的第 1 步将以绿色突出显示。对于第 3 部分,进度条的第 1 步和第 2 步将以绿色等突出显示。

step-incomplete 类与 step-complete 类相同,只是背景不同。

目前,我遇到了一些问题。我找不到如何引用每个 div 中的标题。无论我做什么,我都一无所获或 [object HTMLHeadingElement]。循环本身没问题,但我找不到在特定 div 中更改特定 header 的类名的方法。

代码如下:

<html>

<head>
<style type="text/css">
.step-complete {
display: inline;
border-style: hidden;
background: green;
}
.step-incomplete {
display: inline;
border-style: hidden;
background: none;
}
</style>

<script type="text/javascript">
var numOfSections = 4;

function changeColour() {
for (i = 1; i <= numOfSections; i++) {
if (i != 1) {
alert(i);
var progress = document.getElementById('progress-' + i).id;
alert(progress);
for (j = i - 1; j >= 1; j--) {
alert(j);
var header = document.getElementsByName("step-" + j);
alert(progress.header.className);

}
}
}
}

window.onload = function() {
changeColour();
};
</script>
</head>

<body>

<button id="push" onclick="changeColour()">click me</button>


<div id="progress-1">
<h1 name="step-1" class="step-incomplete">Step1</h1>
<h1 name="step-2" class="step-incomplete">Step2</h1>
<h1 name="step-3" class="step-incomplete">Step3</h1>
<h1 name="step-4" class="step-incomplete">Step4</h1>
</div>
<h1 id="header1">Header1</h1>
<p>..................
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</p>

<div id="progress-2">
<h1 name="step-1" class="step-incomplete">Step1</h1>
<h1 name="step-2" class="step-incomplete">Step2</h1>
<h1 name="step-3" class="step-incomplete">Step3</h1>
<h1 name="step-4" class="step-incomplete">Step4</h1>
</div>
<h1 id="header2">Header2</h1>
<p>..................
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</p>

<div id="progress-3">
<h1 name="step-1" class="step-incomplete">Step1</h1>
<h1 name="step-2" class="step-incomplete">Step2</h1>
<h1 name="step-3" class="step-incomplete">Step3</h1>
<h1 name="step-4" class="step-incomplete">Step4</h1>
</div>
<h1 id="header3">Header3</h1>
<p>..................
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</p>

<div id="progress-4">
<h1 name="step-1" class="step-incomplete">Step1</h1>
<h1 name="step-2" class="step-incomplete">Step2</h1>
<h1 name="step-3" class="step-incomplete">Step3</h1>
<h1 name="step-4" class="step-incomplete">Step4</h1>
</div>
<h1 id="header4">Header4</h1>
<p>..................
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</br>
</p>

</body>

</html>

最终目标如图所示:

image of end goal

最佳答案

对我来说,我想你快到了!不过我敢肯定,使用 getElementsByName(),您必须提供一个索引,类似于 getElementsByTagName()getElementsByClass(),所以当你有 -

var header = document.getElementsByName("step-" + j);

我觉得应该是

var header = document.getElementsByName("step-" + j)[0];

在末尾添加索引 [0]

关于javascript - 尝试在 div 中引用没有 id 的 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36452579/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com