DDR爱好者之家 Design By 杰米
本文实例为大家分享了JS实现留言板的具体代码,供大家参考,具体内容如下
一、设计思路
这个留言板有两个大的版块,一个是留言板(主要是发布留言的内容会在上面显示),另一个是发布留言(可以在这里输入你想要留言的内容等)。下图是留言版做成的样子:
主要用到input textarea button img div等;还用到了date对象的知识来获取时间,innerHTML来修改span中的内容。之后就是使用DOM的知识来实现这些功能。
二、代码
html
<body οnlοad="f3()"> <div class="title"> <h1>留言板</h1> <span id="step">一共有()楼</span> </div> <div id="contents"> <div class="box" id="box"> <div class="div01">1楼</div> <div class="tit"><img src="/UploadFiles/2021-04-02/i1.png">css
*{padding: 0;margin: 0;border: 0;text-decoration: none;} .title{width: 1000px;height: 80px;background: #2b669a;margin: auto; color: #ffffff;} .title h1{line-height: 80px;text-align: center;width: 920px;float: left;} .title span{float: left;width: 80px;line-height: 80px;font-size: 12px;} #contents{ width: 1000px;background:#9acfea;margin: auto;} #contents .box{display:none;height: 150px;border-bottom: 1px dashed #ffffff;} #contents .box .div01{width: 50px;text-align: center;float: left;line-height: 150px;} #contents .box .tit{width: 80px;height: 80px;float: left;margin: 30px;} #contents .box .tit img{width: 80px;height: 80px;} #contents .box .main{width: 100px;height: 100px;float: left;margin-top: 30px;line-height: 40px;} #contents .box .div02{font-size: 12px;width: 240px;height: 100px;float: right;line-height: 40px;margin-top: 30px;} .title1{width: 1000px;height: 80px;background: #2b669a;margin: auto;color: #ffffff;} .title1 span{float: left;width: 80px;line-height: 80px;font-size: 12px;} .title1 h1{line-height: 80px;text-align: center;width: 920px;float: left;} .message{width: 1000px;margin: auto;line-height:30px;background:#9acfea;height: 220px;} .message .nav{width: 400px;margin-left: 400px;} #img img{width:50px;height: 50px;} .border{border: 1px solid crimson;} .red{color:red;} .border{border: 1px solid red;}js
function f(obj,text) { obj.nextSibling.innerHTML=text; obj.nextSibling.style.color="#000"; obj.nextSibling.style.fontSize=12+'px'; } function f1(obj) { obj.nextSibling.innerHTML=" "; } //发布留言 var i = 0; //i 为 box 的 id var j = 0; //j是一共有多少个楼,删除后的用它接收 var q =1; function f2() { var name = document.getElementById("name"); var main = document.getElementById("textarea"); var box = document.getElementById("box"); var contents = document.getElementById("contents"); var step = document.getElementById("step"); var pic1 =document.getElementById("pic1"); if (name.value == "") { name.nextSibling.innerHTML="*必须填写用户名!"; name.nextSibling.style.color="red"; name.nextSibling.style.fontSize=10+'px'; }else if(main.value == ""){ main.nextSibling.innerHTML="必须填写内容"; main.nextSibling.style.color="red"; main.nextSibling.style.fontSize=10+'px'; }else if(q==1){ //选择头像 pic1.innerHTML="必须选中一个头像!"; pic1.style.color="red"; pic1.style.fontSize=10+"px"; }else { //楼层 var div = box.cloneNode(true); div.style.display="block"; i++; j++; div.id="box"+i; var child = div.getElementsByTagName("div"); //获取克隆出来div里面的小div child[0].innerHTML=i+"楼"; child[3].innerHTML="姓名:"+name.value; child[4].innerHTML="内容:"+main.value; step.innerHTML="一共有("+ j +")楼"; child[7].innerHTML="发布时间"+oTime(); contents.appendChild(div); } } //发布时间的时间 function oTime() { var date = new Date(); var year = date.getFullYear(); var month = date.getMonth()+1; var date1 = date.getDate(); var day = date.getDay(); var hour = date.getHours(); var minutes = date.getMinutes(); var second = date.getSeconds(); if(day === 0){ day = "日"; }else if(day == 1){ day = "一"; }else if(day == 2){ day = "二"; }else if(day == 3){ day = "三"; }else if(day == 4){ day = "四"; }else if(day == 5){ day = "五"; }else if(day == 6){ day = "六"; } return year+"年"+month+"月"+date1+"日"+hour+":"+minutes+":"+second+"星期"+day; } //删除 function del(obj) { var step = document.getElementById("step"); j--; step.innerHTML="一共有("+ j +")楼"; //删除后一共有多少楼 var contents = document.getElementById("contents"); var p =obj.parentNode.parentNode.parentNode; //removeChild(p)表示把p删掉 contents.removeChild(p); } //点赞 function praise(obj,t) { t++; var parent1 = obj.parentNode; parent1.innerHTML='<a href="javascript:void (0)" οnclick="del(this)">删除</a>|' + '<a href="javascript:void (0)" οnclick="praise(this,'+ t +')">点赞('+ t +')</a>'; } //选择头像 function f3() { var img = document.getElementById("img"); var pic = img.getElementsByTagName("img"); var box = document.getElementById("box"); var img1= box.getElementsByTagName("img"); for(var a =0; a<pic.length;a++){ pic[a].onclick=function () { for(var b=0;b<pic.length;b++){ pic[b].className=""; } this.className="border"; img1[0].src = this.src; q=2; pic1.innerHTML=""; } } }以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米
暂无评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
2024年11月24日
2024年11月24日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]