首页 > Web开发 > 详细

JS 特效 - 发表评论

时间:2021-07-22 10:44:46      阅读:26      评论:0      收藏:0      [点我收藏+]

效果:

技术分享图片

代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>发表评论</title>
		<style>
			*{
				margin: 0;
				padding: 0;
				list-style: none;
			}
			#box{
				width: 800px;
				border: 1px solid #ccc;
				margin: 100px auto;
				padding: 20px;
			}
			.box-top{
				margin-bottom: 20px;
			}
			#my_textarea{
				width: 80%;
				height: 120px;
				padding: 10px;
			}
			#ul{
				margin: 0 75px;
			}
			#ul li{
				border-bottom: 1px dashed #CCC;
				color: red;
				line-height: 44px;
			}
			#ul li a{
				float: right;
			}
		</style>
	</head>
	<body>
		<div id="box">
			<div class="box-top">
				<label for="">发表评论</label>
				<textarea id="my_textarea" name="my_textarea" rows="10" cols="30"></textarea>
				<button id="btn">发表</button>
			</div>
			<div class="box-bottom">
				<ul id="ul">
					<!-- <li>今天天气很好!<a href="#">删除</a></li> -->
				</ul>
			</div>
		</div>
		<script type="text/javascript">
			//监听按钮的点击
			window.addEventListener(‘load‘, function(){
				//发表评论
				$(‘btn‘).addEventListener(‘click‘, function(){
					//获取输入框中的内容
					let content = $(‘my_textarea‘).value;
					//判断内容是否为空
					if(content.trim().length===0){
						alert(‘请输入评论的内容‘);
						return;
					}
					//创建li标签放入<ul>
					let li = document.createElement(‘li‘);
					li.innerHTML = `${content} <a href="#">删除</a>`;
					$(‘ul‘).insertBefore(li, $(‘ul‘).children[0]);
					//清除输入框中内容
					$(‘my_textarea‘).value = ‘‘;
					//删除评论
					let as = $(‘ul‘).getElementsByTagName(‘a‘);
					for(let i=0; i<as.length; i++){
						let sa = as[i];
						sa.addEventListener(‘click‘, function(){
							this.parentNode.remove();
						})
					}
				})
			});
			function $(id){
				return typeof id ===‘string‘ ? document.getElementById(id):null;
			}
		</script>
	</body>
</html>

注意同步异步问题,删除评论部分要放在发表评论部分里,因为<a>是在发表评论部分里面创建的。

JS 特效 - 发表评论

原文:https://www.cnblogs.com/xiaoxuStudy/p/15041863.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!