基于JavaScript实现评论框展开和隐藏功能
发布时间 - 2026-01-11 02:57:40 点击率:次1.效果图如下所示,

点击评论会在对应的评论区域展开评论输入框,点击取消会取消对应的评论输入框
2.html代码:需要引入jQuery.js
<div class="nr-comment"> <div class="nr-comment-con"> <div class="nr-comment-nav"> <div class="comment-number"> <span>493</span> <span>条评论</span> </div> <div class="comment-sort"> 切换为时间排序 </div> </div> <div class="comment-content"> <div class="com-users"> <div class="comment-user"> <span>知乎用户</span> <div class="comment-user-content"> 这个爬虫真的好强大! </div> </div> <div class="comment-time"> <div>2017.10.01 21:32:30</div> <button class="btn btn-primary btn-sm btn-reply">回复</button> </div> </div> <div class="user-reply"> <duv class="reply-in"> <input type="text" value="" name="" placeholder="请输入评论内容" /> </duv> <div class="reply-buttons"> <button type="button" class="btn btn-primary btn-comment btn-sm">评论</button> <button type="button" class="btn btn-default btn-cancel btn-sm">取消</button> </div> </div> </div> <div class="comment-content"> <div class="com-users"> <div class="comment-user"> <span>知乎用户</span> <div class="comment-user-content"> 这个爬虫真的好强大! </div> </div> <div class="comment-time"> <div>2017.10.01 21:32:30</div> <button class="btn btn-primary btn-sm btn-reply">回复</button> </div> </div> <div class="user-reply"> <duv class="reply-in"> <input type="text" value="" name="" placeholder="请输入评论内容" /> </duv> <div class="reply-buttons"> <button type="button" class="btn btn-primary btn-comment btn-sm">评论</button> <button type="button" class="btn btn-default btn-cancel btn-sm">取消</button> </div> </div> </div> <div class="comment-content"> <div class="com-users"> <div class="comment-user"> <span>知乎用户</span> <div class="comment-user-content"> 这个爬虫真的好强大! </div> </div> <div class="comment-time"> <div>2017.10.01 21:32:30</div> <button class="btn btn-primary btn-sm btn-reply">回复</button> </div> </div> <div class="user-reply"> <duv class="reply-in"> <input type="text" value="" name="" placeholder="请输入评论内容" /> </duv> <div class="reply-buttons"> <button type="button" class="btn btn-primary btn-comment btn-sm">评论</button> <button type="button" class="btn btn-default btn-cancel btn-sm">取消</button> </div> </div> </div> <div class="comment-content"> <div class="com-users"> <div class="comment-user"> <span>知乎用户</span> <div class="comment-user-content"> 这个爬虫真的好强大! </div> </div> <div class="comment-time"> <div>2017.10.01 21:32:30</div> <button class="btn btn-primary btn-sm btn-reply">回复</button> </div> </div> <div class="user-reply"> <duv class="reply-in"> <input type="text" value="" name="" placeholder="请输入评论内容" /> </duv> <div class="reply-buttons"> <button type="button" class="btn btn-primary btn-sm btn-comment">评论</button> <button type="button" class="btn btn-default btn-sm btn-cancel">取消</button> </div> </div> </div> <div class="comment-ipt"> <input type="text" placeholder="输入你的评论"> <button type="submit" class="btn btn-sm btn-primary">评论</button> </div> </div> </div>
3.css样式代码,样式无所谓,自己写就可以。
.nr-comment {
width:
100%;
border-right:
1px
solid #A9A9A9;
border-left:
1px
solid #A9A9A9;
}
.nr-comment .nr-comment-con {
width:
100%;
}
.nr-comment .nr-comment-con .nr-comment-nav {
width:
100%;
height:
40px;
border-bottom:
1px
solid #F5F5F6;
border-right:
1px
solid #A9A9A9;
border-left:
1px
solid #A9A9A9;
background-color:
#1E8CE0;
}
.nr-comment .nr-comment-con .nr-comment-nav .comment-number {
float:
left;
width:
85px;
height:
30px;
text-align:
center;
margin-top:
5px;
color:
white;
line-height:
2.3em;
}
.nr-comment .nr-comment-con .nr-comment-nav .comment-sort {
float:
right;
width:
110px;
height:
30px;
margin-top:
5px;
margin-right:
10px;
line-height:
2em;
color:
white;
}
.nr-comment .nr-comment-con .comment-content {
width:
100%;
margin-top:
10px;
border-bottom:
1px
solid #a9a9a9;
}
.nr-comment .nr-comment-con .comment-content .com-users {
width:
100%;
min-height:
60px;
}
.nr-comment .nr-comment-con .comment-content .com-users .comment-user {
float:
left;
width:
500px;
height:
60px;
}
.nr-comment .nr-comment-con .comment-content .com-users .comment-user span {
color:
black;
margin-left:
10px;
}
.nr-comment .nr-comment-con .comment-content .com-users .comment-user .comment-user-content {
width:
90%;
height:
60px;
margin-left:
10px;
}
.nr-comment .nr-comment-con .comment-content .com-users .comment-time {
float:
right;
width:
190px;
height:
60px;
text-align:
center;
color:
#9CADC6;
font-size:
0.9em;
text-align:
right;
}
.nr-comment .nr-comment-con .comment-content .com-users .comment-time div {
margin-right:
15px;
}
.nr-comment .nr-comment-con .comment-content .com-users .comment-time .btn-reply {
margin-top:
5px;
border-radius:
4px;
border:
none;
background-color:
#1BB394;
color:
white;
margin-right:
15px;
}
.nr-comment .nr-comment-con .comment-content .user-reply {
display:
none;
width:
100%;
height:
50px;
}
.nr-comment .nr-comment-con .comment-content .user-reply .reply-in {
float:
left;
width:
85%;
height:
50px;
}
.nr-comment .nr-comment-con .comment-content .user-reply .reply-in input {
width:
100%;
height:
30px;
margin-top:
10px;
margin-left:
10px;
}
.nr-comment .nr-comment-con .comment-content .user-reply .reply-buttons {
float:
right;
margin-top:
10px;
}
.nr-comment .nr-comment-con .comment-content .user-reply .reply-buttons .btn-comment {
float:
right;
margin-right:
14px;
background-color:
#1BB394;
border:
none;
color:
white;
}
.nr-comment .nr-comment-con .comment-content .user-reply .reply-buttons .btn-cancel {
float:
right;
margin-right:
10px;
}
.nr-comment .nr-comment-con .comment-ipt {
width:
100%;
height:
40px;
border-bottom:
1px
solid #A9A9A9;
margin-top:
10px;
}
.nr-comment .nr-comment-con .comment-ipt input {
display:
block;
width:
92%;
height:
30px;
float:
left;
font-size:
14px;
margin-left:
10px;
}
.nr-comment .nr-comment-con .comment-ipt button {
display:
block;
float:
right;
background-color:
#1BB394;
color:
white;
margin-right:
13px;
border:
none;
}
4.js控制对应评论按钮事件。
<script>
$(document).ready(function()
{
$('.btn-reply').click(function()
{
// console.log($(this).index());
// 获取回复按钮集合,getElementByClassName;
var m
= document.getElementsByClassName("btn-reply");
var n
= document.getElementsByClassName("user-reply");
console.log('回复按钮集合'
+ m);
// 获取回复按钮的索引
var index
= $(".btn-reply").index($(this));
console.log(index);
$(".user-reply").eq(index).css("display",
"block");
});
$('.btn-cancel').click(function()
{
var m
= document.getElementsByClassName("btn-reply");
var n
= document.getElementsByClassName("user-reply");
var index
= $(".btn-cancel").index($(this));
console.log(index);
$(".user-reply").eq(index).css("display",
"none");
});
});
</script>
总结
以上所述是小编给大家介绍的基于JavaScript实现评论框展开和隐藏功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# js评论框
# js
# 展开
# 隐藏
# javascript实现table单元格点击展开隐藏效果(实例代码)
# JS实现鼠标点击展开或隐藏表格行的方法
# JS点击链接后慢慢展开隐藏着图片的方法
# 用javascript 控制表格行的展开和隐藏的代码
# js实现点击展开隐藏效果(实例代码)
# 请输入
# 小编
# 输入框
# 在此
# 会在
# 给大家
# 所示
# 所述
# 给我留言
# 感谢大家
# 疑问请
# 有任何
# 无所谓
# btn
# primary
# duv
# reply
# sm
# button
# time
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel如何使用Collections进行数据处理?(实用方法示例)
Laravel如何自定义错误页面(404, 500)?(代码示例)
如何在七牛云存储上搭建网站并设置自定义域名?
如何解决hover在ie6中的兼容性问题
JS经典正则表达式笔试题汇总
在Oracle关闭情况下如何修改spfile的参数
Python自动化办公教程_ExcelWordPDF批量处理案例
EditPlus 正则表达式 实战(3)
实例解析angularjs的filter过滤器
php 三元运算符实例详细介绍
Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程
百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?
html5如何实现懒加载图片_ intersectionobserver api用法【教程】
今日头条AI怎样推荐抢票工具_今日头条AI抢票工具推荐算法与筛选【技巧】
香港服务器网站推广:SEO优化与外贸独立站搭建策略
高端企业智能建站程序:SEO优化与响应式模板定制开发
香港网站服务器数量如何影响SEO优化效果?
进行网站优化必须要坚持的四大原则
php做exe能调用系统命令吗_执行cmd指令实现方式【详解】
怎么用AI帮你为初创公司进行市场定位分析?
Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南
Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程
Laravel如何实现数据导出到CSV文件_Laravel原生流式输出大数据量CSV【方案】
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
长沙企业网站制作哪家好,长沙水业集团官方网站?
浅谈redis在项目中的应用
Laravel如何为API生成Swagger或OpenAPI文档
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解
微信小程序 canvas开发实例及注意事项
如何使用 Go 正则表达式精准提取括号内首个纯字母标识符(忽略数字与嵌套)
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
如何用AI帮你把自己的生活经历写成一个有趣的故事?
Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用
个人摄影网站制作流程,摄影爱好者都去什么网站?
Laravel DB事务怎么使用_Laravel数据库事务回滚操作
如何制作一个表白网站视频,关于勇敢表白的小标题?
Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】
java获取注册ip实例
Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试
Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控
Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)
如何快速搭建高效简练网站?
Python自然语言搜索引擎项目教程_倒排索引查询优化案例
Laravel如何使用Sanctum进行API认证?(SPA实战)
企业网站制作这些问题要关注
Laravel如何生成URL和重定向?(路由助手函数)
如何用低价快速搭建高质量网站?

