尝试下面的动态样式更改,但该功能保持沉默。我使用过JSHint,一切似乎都很好。
function styleInput(elClass,color)
{
"use strict";
var document;
elClass = document.getElementsByClassName(elClass);
var len = elClass.length;
for (var i=0; i < len;i++) {
if (elClass[i].className === elClass)
{
var tmp = elClass[i];
tmp.style.backgroundColor = color;
tmp = " ";
}
}
}
styleInput("fm_bushido", "#f3f3f3");
- - - - - - - - HTML
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>JS Bin</title>
<!--[if IE]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<style>
article, aside, figure, footer, header, hgroup,
menu, nav, section { display: block; }
</style>
</head>
<body>
<input type="text" name="name" class="fm_bushido txt" placeholder="Name:"></input>
</body>
</html>
答案 0 :(得分:0)
您正在使用变量elClass
两次,并使用document.getElementsByClassName(elClass);
返回的值覆盖传递给函数的值。一旦您的脚本下降到if (elClass[i].className === elClass)
,您就会将元素的类名与元素本身进行比较,不您传递给函数的值(fm_bushido
)。< / p>
只需更改其中一个元素的名称即可。