jQuery实现评论模块

所属分类: 网络编程 / JavaScript 阅读数: 2095
收藏 0 赞 0 分享

本文实例为大家分享了jQuery实现评论模块的具体代码,供大家参考,具体内容如下

本模块可用于评论或留言,输入区模仿畅言,内容显示使用时间轴,以下是示例图。

实现代码如下:

index.html

<!DOCTYPE html>
<html lang="en">
 
<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>Document</title>
 <link rel="stylesheet" href="css/publish_comment.css" >
</head>
 
<body>
 <div class="comment-box">
 <div class="input-box">
  <div class="input-box-head">
  <img class="user-photo" src="images/photo.jpg">
  </div>
  <div class="input-box-main">
  <div class="box-border-l"></div>
  <div class="box-border-r"></div>
  <div class="box-top"></div>
  <div class="box-main">
   <div class="input-region">
   <textarea class="input-text-area" name="comment_input" placeholder="有事没事说两句..."></textarea>
   </div>
  </div>
  <div class="pub-area">
   <div class="pub-btn"></div>
  </div>
  </div>
 
 </div>
 <div class="show-box">
  <div class="comment-title">评论</div>
  <div class="time-line">
  <div class="comment-content">
   <div class='comment'> <img class=head-shot src='images/photo.jpg'>
   <div class='c-circle'></div>
   <span id='time'>2019-5-15&nbsp;
   <span id='hour'>15:15</span>
   </span>
   <br>
   <p style='padding:4px'>支持各种类型的Web网站接入,网站只需要粘贴、复制JS代码到网页</p>
   </div>
  </div>
  </div>
 
 </div>
 </div>
 <script src="js/jquery-3.3.1.min.js"></script>
 <script>
 var hei = 200;
 $(function() {
  var dateDom = new Date();
  //获取本地时间,年月日时分
  var year = dateDom.getFullYear();
  var month = dateDom.getMonth() + 1;
  var day = dateDom.getDate();
  var hour = dateDom.getHours();
  var min = dateDom.getMinutes();
 
  $(".time-line").css("height", hei + "px");
 
  $(".pub-btn").click(function() {
  var comment_c = $(".input-text-area").val();
 
  if (comment_c == "") {
   alert("请输入内容");
   return;
  }
 
  $(".comment-content").prepend("<div class='comment'>" + "<img class=head-shot src='images/photo.jpg'>" +
   "<div class='c-circle'></div>" +
   "<span id='time'>" + year + "-" +
   month + "-" +
   day + "&nbsp;&nbsp;" +
   "<span id='hour'>" + hour + ":" + min + "</span>" +
   "</span>" +
   "<br>" +
   "<p style='padding:4px'>" + comment_c + "</p>" +
   "</div>");
  $(".time-line").css("height", hei + "px");
  hei += 115;
  })
 
 
 })
 </script>
 
</body>
 
</html>

publish_comment.css

* {
 margin: 0;
 padding: 0
}
 
body {
 font-size: 14px;
 font-family: "微软雅黑";
 /* background: url("../images/2.jpg") top no-repeat; */
 background: #333333;
 background-attachment: fixed;
 z-index: 0;
 background-size: 100%;
}
 
.comment-box {
 width: 800px;
 margin: auto;
 margin-top: 100px;
}
 
.input-box {
 width: 100%;
}
 
.input-box-head {
 position: relative;
 width: 100%;
 height: 60px;
 z-index: 10;
}
 
.user-photo {
 width: 40px;
 height: 40px;
 border-radius: 42px;
 border: 1px solid #4398ed;
 position: absolute;
 top: 22px;
 left: 9px;
 font-size: 14px;
 color: #4398ed;
 text-align: center;
 line-height: 42px!important;
 font-family: "Microsoft YaHei";
 cursor: pointer;
 background: 0 0;
}
 
.input-box-main {
 display: block;
 position: relative;
 zoom: 1;
 z-index: 2;
}
 
.box-border-l {
 width: 8px;
 height: 97px;
 position: absolute;
 background: url("../images/border-l.png");
 top: 0;
 left: 0;
}
 
.box-border-r {
 width: 8px;
 height: 97px;
 position: absolute;
 background: url("../images/border-r.png");
 top: 0;
 right: 0;
}
 
.box-main {
 margin: 0 8px;
 height: 96px;
 /* background: #fff; */
 border-bottom: 1px solid #4398ed;
}
 
.box-top {
 width: calc(100% - 16px);
 height: 8px;
 background: url(https://changyan.itc.cn/mdevp/extensions/cmt-box/065/images/border-t.png);
 overflow: hidden;
 position: absolute;
 left: 8px;
 top: 0;
}
 
.input-region {
 padding: 18px 10px 0;
}
 
.input-text-area {
 width: 100%;
 height: 70px;
 background: 0 0;
 overflow-x: hidden;
 overflow-y: auto;
 border: 0;
 font-size: 13px;
 color: #4398ed;
 resize: none;
 line-height: normal;
 text-align: left;
 box-shadow: none;
 -webkit-box-shadow: none;
 outline: none;
 border: none;
}
 
.pub-area {
 width: 100%;
 position: relative;
 z-index: 12;
}
 
.pub-btn {
 position: absolute;
 top: 10px;
 right: 0;
 width: 102px;
 height: 30px;
 overflow: hidden;
 border: 0;
 padding: 0;
 margin: 0;
 cursor: pointer;
 background-image: url("../images/post-btn.png");
 background-repeat: no-repeat;
 background-color: transparent;
}
 
.show-box {
 position: relative;
 top: 10px;
}
 
.comment-title {
 position: absolute;
 top: 35px;
 left: 28px;
 width: 60px;
 height: 60px;
 line-height: 60px;
 text-align: center;
 font-size: 16px;
 color: #4398ed;
 border: 2px solid #4398ed;
 border-radius: 50%;
}
 
.time-line {
 width: 60px;
 height: 0;
 position: absolute;
 top: 100px;
 left: 0;
 border-right: 2px solid #4398ed;
}
 
.comment-content {
 width: 380px;
 height: 80px;
 position: absolute;
 top: 0px;
 left: 60px;
}
 
.comment-content .comment {
 width: 600px;
 height: 80px;
 /* background: #fff; */
 border: 1px solid #4398ed;
 border-radius: 6px;
 margin-top: 30px;
 font-size: 16px;
 line-height: 20px;
 color: #4398ed;
 word-break: break-all;
 position: relative;
 left: 15px;
 padding: 10px;
 box-sizing: border-box;
}
 
.c-circle {
 width: 6px;
 height: 6px;
 border-radius: 50%;
 border: 2px solid #4398ed;
 background: #4398ed;
 position: absolute;
 top: 35px;
 left: -20px;
}
 
.head-shot {
 position: absolute;
 top: 20px;
 left: -70px;
 width: 40px;
 height: 40px;
 border: 1px solid #4398ed;
 border-radius: 50%;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

BootStrap数据表格实例代码

本文通过实例代码给大家分享了BootStrap数据表格的相关知识,感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

基于vue的短信验证码倒计时demo

这篇文章主要介绍了基于vue的短信验证码倒计时demo,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解React Native开源时间日期选择器组件(react-native-datetime)

本篇文章主要介绍了详解React Native开源时间日期选择器组件(react-native-datetime),具有一定的参考价值,有兴趣的可以了解一下
收藏 0 赞 0 分享

JS库particles.js创建超炫背景粒子插件(附源码下载)

particles.js用于创建粒子的轻量级 JavaScript 库。使用方法非常简单,代码也很容易实现,下面通过本文给大家分享JS库particles.js创建超炫背景粒子插件附源码下载,需要的朋友参考下吧
收藏 0 赞 0 分享

JS库之Waypoints的用法详解

waypoints的功能非常强大,一款用于捕获各种滚动事件的插件,下面跟随脚本之家小编一起学习JS库之Waypoints的用法吧
收藏 0 赞 0 分享

强大的JavaScript响应式图表Chartist.js的使用

本篇文章主要介绍了强大的JavaScript响应式图表Chartist.js的使用,具有一定的参考价值,有兴趣的可以了解一下
收藏 0 赞 0 分享

详解wow.js中各种特效对应的类名

本篇文章主要介绍了wow.js中各种特效对应的类名 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

JS库之Highlight.js的用法详解

highlight.js是一款轻量级的Web代码语法高亮库。下面通过实例代码给大家分享JS库之Highlight.js的用法详解,感兴趣的朋友跟随脚本之家小编一起学习吧
收藏 0 赞 0 分享

详解动画插件wow.js的使用方法

本篇文章主要介绍了动画插件wow.js的使用方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

JS库 Highlightjs 添加代码行号的实现代码

Highlightjs是一款优秀的代码高亮Js组件,可以很方便地对各种语言编写的代码添加语法高亮样式。本文重点给大家介绍Highlightjs 添加代码行号的实现代码,需要的朋友参考下吧
收藏 0 赞 0 分享
查看更多