gpt4 book ai didi

javascript - 为什么标签的颜色没有改变?

转载 作者:太空宇宙 更新时间:2023-11-04 13:49:06 25 4
gpt4 key购买 nike

页面加载后标签的颜色(即“输入你的名字”)应该变成红色。但标签的颜色保持不变。为什么会这样? p>

脚本

window.onload = startScript;

function startScript() {
if( document.getElementById("text_field").value === "me") {
var allTags = document.getElementsByTagName("label");
allTags.className = "inserter";
}
}

HTML

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<script type="text/javascript" src="inserter.js">
</script>
<style type="text/css">
@import url("inserter.css");
</style>
</head>

<body bgcolor="#99FFFF">
<form>
<label>Enter your name<input type="text" id="text_field" value="me" />
</label>
</form>
</body>
</html>

CSS

@charset "utf-8";
/* CSS Document */

.inserter {
color:#F00;
}

现在,由于值等于 me,类名“inserter”被动态插入到标签元素中,颜色应该显示为红色。

为什么这没有发生?

最佳答案

我认为你需要遍历 allTags:

var allTags = document.getElementsByTagName("label");
for (var i = 0; i < allTags.length; i++) {
allTags[i].className = 'inserter';
}

如果你可以使用 jQuery,它会让生活变得更加轻松!

更新以添加与您的代码等效的 jQuery:

if ($('#text_field').val() === 'me') {
$('label').addClass('inserter');
}

它只是更整洁

关于javascript - 为什么标签的颜色没有改变?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7485455/

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