老师检查一下,还有别方法吗

来源:4-5 编程练习

慕九州8176055

2019-11-08 11:42:26

<!DOCTYPE html>

<html>

    <head>

    <meta charset="UTF-8">

    <title>输入文本</title>

</head>

<body>

<p>字数限制在30字内,<span>您还可以输入<b>30</b> 字</span></p>

<textarea cols="50"  rows="7"  id="text"></textarea>

<script type="text/javascript">

//补充代码

var text=document.getElementById("text"),

blen=document.getElementsByTagName("b")[0],

spans=document.getElementsByTagName("span")[0],

total=30;

text.onkeyup=function(){

var len=this.value.length;

if(len<=30){

var word=total-len;

blen.innerHTML=word;

}else{

var word1=len-total;

spans.innerHTML="您已超出"+word1+"字";

spans.style.color="red";

}

}

</script>

</body>

</html>


写回答

1回答

好帮手慕糖

2019-11-08

同学你好,代码中的问题如下:

1、超出之后,再删除的话,提示回不到还可以输入的提示。如下:

http://img.mukewang.com/climg/5dc505600950833203120092.jpg

这是因为改变了结构,改变了html的结构,超出之后,就没有b这个元素,不能直接赋值,建议:输入的也可以对span赋值,例:

http://img.mukewang.com/climg/5dc505f30990d5b807200239.jpg

2、之后还可以在优化下哦,比如超出删除之后的字体颜色,还可以设置为黑色,也可以设置下加粗,例:

http://img.mukewang.com/climg/5dc5063009a7fcd507680582.jpg

如果我的回答帮到了你,欢迎采纳。

祝学习愉快!

0

0 学习 · 40143 问题

查看课程