实现微博输入计算字数

Original 2019-01-16 21:26:51 269
abstract:<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0&q
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>微博输入</title>
<style media="screen" type="text/css">
body{font-size: 12px;}
.box{width: 600px;height: 160px;border: 8px solid pink;margin: 0px auto;padding: 10px}
img{float: left;}
.box1{float: left;margin-left: 255px;width: 150px;height: 24px;text-align: right;font-size: 14px;color: #888;}
.box1 span{font-size: 16px;font-weight: bold;}
#text{width: 600px;height: 100px;border: 1px solid #888;margin-top:5px; }
.box #sp1,#sp2,#sp3,#sp4,#sp5,#sp6{float: left;width: 30px;height: 32px;line-height: 32px;padding-left: 26px;}
#sp1{background: url(images/an5.png) no-repeat left center;}
#sp2{background: url(images/an4.png) no-repeat left center;}
#sp3{background: url(images/an3.png) no-repeat left center;}
#sp4{background: url(images/an2.png) no-repeat left center;}
#sp5{background: url(images/an1.png) no-repeat left center;width: 40px;}
#sp6{margin-left: 150px;margin-right: 15px;color: #888;}
#bt{float: left;width: 80px;height: 30px;border: none;background: #ffc09f;color: #fff;border-radius: 5px}
</style>
<script type="text/javascript">
var text,number,m
window.onload=function(){
text=document.getElementById('text')
number=document.getElementById('number')
bt=document.getElementById('bt')
m=140;
number.innerHTML=m
text.onkeyup=function aa(){
m=140-text.value.length
if (m<0) {
number.style.color='red'
}else{
number.style.color='#888'
}
number.innerHTML=m
}
bt.onclick=function(){
if (m==140) {
alert("请输入内容!");
text.focus()
}else if(m<0){
alert("字数超过140个字");
text.focus()
}else{
alert("发布成功!")
}
}
aa()
}
</script>
</head>
<body >
<div>
<img src="images/12.png" alt="">
<div>还可以输入
<span id="number"></span>字
</div>
<textarea id="text"></textarea>
<span id="sp1">表情</span>
<span id="sp2">图片</span>
<span id="sp3">视频</span>
<span id="sp4">话题</span>
<span id="sp5">长微博</span>
<span id="sp6">公开</span>
<input type="button" name="" value="发布" id="bt">


</div>

</body>
</html>

原来还可以通过window.onload=function(){}的方式载入调用函数,我一直以为要写在html元素里面,老师给的案例有点小问题,如果载入页面,不操作输入框的话,直接点击发布也会发布成功,后来发现原因是因为m一开始没有赋值,所以在判断m==140的时候条件不成立,所以发布成功。在输入之前就对m进行赋值,发布按钮就可以正确判断字数了。

Correcting teacher:天蓬老师Correction time:2019-01-17 09:06:05
Teacher's summary:发现问题,并能按自己的想法去解决问题,这是一个程序员的必由之路, window.onload这个方法现在其实都不太常用了, 主要是用DOMContentLoaded, 在构建好DOM就触发, 不必像onload必须等外部资源(如图片,文件)加载完成再钥发, jQuery就是调用这个, 有空了解一下

Release Notes

Popular Entries