试图改变javascript中的计数器颜色

时间:2014-10-17 09:25:05

标签: javascript

我试图在达到极限时改变计数器的颜色 但它不起作用。不知道为什么 我是javascrit新手,我不知道jquery,请在javascript中asnwer。 这是我的代码工作:

<!DOCTYPE html>
<html>
<head>
<script>
function counting(){
    var count = document.getElementById('text1').value;
    var grab = document.getElementById('text1');
    var count1 = document.getElementById('p1');
    count1.innerHTML = count.length;

    if (grab.length > 10) {
       count1.style.color="#0033bb";
    };
  }

</script>
</head>

<body>

<textarea id="text1" onkeyup="counting();"></textarea>
<p id="p1">0</p>
</body>
</html>

2 个答案:

答案 0 :(得分:2)

抓取是元素,而不是你想要它的值

if (grab.value.length > 10) {
   count1.style.color="red";
}

工作小提琴: http://jsfiddle.net/entw1e39/

正如其他人指出你也可以使用

 if (count.length > 10) {
     count1.style.color="red";
 }

然后我会改写

var grab = document.getElementById('text1');
var count = grab.value;

这是一个很好的做法。没有必要两次调用DOM,这是成本效率低下的。

答案 1 :(得分:0)

grab是输入元素,grab.length始终是undefined

您可以使用count.length代替grab.length