您现在的位置是:网站首页> 编程资料编程资料
JS实现微博发布功能_javascript技巧_
2023-05-24
251人已围观
简介 JS实现微博发布功能_javascript技巧_
本文实例为大家分享了JS实现微博发布小案例的具体代码,供大家参考,具体内容如下
效果图:

html代码:
0 / 200
css代码:
JS代码:
// 模拟数据,后期我们需要从这个数组中随机获取一个数据对象,做为发布微博的用户信息进行渲染,但是这个不是关键业务,我也可以固定写死 let dataArr = [ { uname: '司马懿', imgSrc: './images/9.5/01.jpg' }, { uname: '女娲', imgSrc: './images/9.5/02.jpg' }, { uname: '老夫子', imgSrc: './images/9.5/03.jpg' }, { uname: '百里玄策', imgSrc: './images/9.5/04.jpg' } ] // 获取元素 let area = document.querySelector(`#area`) //文本框 let useCount= document.querySelector(`#useCount`) //文字数量 let bnt = document.querySelector(`#send`) //发布按钮 let list =document.querySelector(`#list`) //列表结 let contentList=document.querySelector(`.contentList`) //微博内容 // 为文本域添加键盘事件 area.addEventListener(`keydown`,function(e){ // 判断e.key用户按下的键盘键的值 =Enter回车键 if (e.key == `Enter`){ bnt.click() } }) // 为文本框添加input事件 area.addEventListener(`input`,function(){ // 去除左右空格trim() useCount.innerHTML=area.value.trim().length }) // 为发布按钮添加点击事件 bnt.addEventListener(`click`,function(){ // 随机获取数据对象进行渲染 let arr=parseInt(Math.random()*dataArr.length) let content=area.value // 判断 文本框内容的长度=0 提示用户 if (content.trim().length ==0){ alert(`请先填写内容再发布`) return } let li = document.createElement(`li`) // 给元素拼接 li.innerHTML=`
${dataArr[arr].uname} 发布于 ${dateFormat()}
${content} X` // 把创建好的元素插入到list list.insertBefore(li,list.children[0]) // 内容发布出去里面清空 area.value=`` // 内容发布出去长度清0 useCount.innerHTML=0 // 删除评论 let del = document.querySelector(`.the_del`) del.addEventListener(`click`,function(){ del.parentNode.remove() }) // 函数封装时间 function dateFormat(){ let data = new Date() let year = data.getFullYear() //年 let month = data.getMonth()+1//月 let day = data.getDate() //日 let h = data.getHours() //时 h = h<10? `0`+h :h let m = data.getMinutes() //分 m = m<10? `0`+m :m let s = data.getSeconds() //秒 s = s<10? `0`+s :s return (`${year}-${month}-${day} ${h}:${m}:${s}`) } })以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
您可能感兴趣的文章:
相关内容
- Vue使用provide各种传值后inject获取undefined的问题及解决_vue.js_
- axios 拦截器管理类链式调用手写实现及原理剖析_JavaScript_
- JS利用循环解决的一些常见问题总结_javascript技巧_
- react-dnd实现任意拖动与互换位置_React_
- VScode中配置JavaScript编译环境的方法_javascript技巧_
- react优雅处理多条件鼠标拖拽位移_React_
- react实现拖拽模态框_React_
- React日期时间显示组件的封装方法_React_
- element ui提交表单返回成功后自动清空表单的值的实现代码_vue.js_
- 使用React组件编写温度显示器_React_

