1. 实现代码:

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
    *{
    padding: 0;
    margin: 0;
    list-style: none;
    }
    #header{
    position: relative;
    width: 800px;
    border:1px solid #ccc;
    padding-top: 30px;
    margin:100px auto;
    background-color: pink;
    box-shadow: 0 0 10px darkblue;
    }
    .tip{
    position: absolute;
    top: 5px;
    left: 10px;
    }
    #top #btn{
    position:absolute;
    top: 0;
    right: 100px;
    margin-top: 5px;
    width: 30px; }
    #my_textarea{
    width: 80%;
    height: 150px;
    margin-left: 50px;
    box-shadow: 0 0 15px black;
    color: black;
    font-weight: bolder;
    font-size: 16px;
    opacity: 0.2;
    z-index: 1;
    }
    #top{
    margin-bottom: 20px;
    }
    #bottom ul{
    margin: 0 80px;
    margin-bottom:20px;
    }
    #bottom ul li{
    border-bottom: 1px dashed #ccc;
    line-height: 44px;
    color: red;
    }
    #bottom ul li a{
    cursor: pointer;
    float:right;
    }
    </style>
    </head>
    <body>
    <div id="header">
    <div id="top">
    <label class="tip" for="my_textarea">发表评论:</label>
    <textarea cols="60" rows="10" id="my_textarea"></textarea>
    <button id="btn">发表</button>
    </div>
    <div id="bottom">
    <ul id="ul"></ul>
    </div>
    </div>
    <script>
    window.onload=function(){
    $("btn").onclick=function(){
    //alert("0");
    // 用一个变量来接收输入的内容
    var content=$("my_textarea").value;
    //console.log(content);
    //判断当输入的内容为空时,提示用户输入评论的内容
    if(content.length===0){
    alert('请输入评论的内容!');
    return;
    } //创建一个li标签动态的插入ul中
    var li=document.createElement("li");
    li.innerHTML=content+'<a href="javascript:;">删除</a>';
    /*
    //将创建的li标签插入到ul标签中;
    $("ul").appendChild(li);
    */
    //将新 输入的内容放在第一条
    $("ul").insertBefore(li,$("ul").children[0]); //清除输入框中的内容;
    $("my_textarea").value=''; //删除评论内容
    //1.获取a标签,监听a标签的点击事件
    var aAll=$("ul").getElementsByTagName("a");
    //console.log(aAll);
    for(var i=0;i<aAll.length;i++){
    var a=aAll[i];
    a.onclick=function(){
    //alert(1);
    //获取父标签删除
    this.parentNode.remove();
    } }
    }
    }
    function $(id){
    return typeof id==="string"?document.getElementById(id):null;
    }
    </script>
    </body>
    </html>

    2.实现效果图:

JS特效实现微博评论逻辑的更多相关文章

  1. 如何科学地蹭热点:用python爬虫获取热门微博评论并进行情感分析

    前言:本文主要涉及知识点包括新浪微博爬虫.python对数据库的简单读写.简单的列表数据去重.简单的自然语言处理(snowNLP模块.机器学习).适合有一定编程基础,并对python有所了解的盆友阅读 ...

  2. vue教程2-07 微博评论功能

    vue教程2-07 微博评论功能 <!doctype html> <html> <head> <meta charset="utf-8"& ...

  3. js特效 15个小demo

    js特效和15个小demo 代码如下:images文件夹未上传 1.图片切换: <!DOCTYPE html> <html> <head> <title> ...

  4. 滚动变色的文字js特效

    Js实现滚动变色的文字效果,在效果展示页面,可看到文字在交替变色显示,以吸引人的注意,效果真心不错哦,把代码拷贝到你的网站后,修改成想要的文字就OK了. 查看效果:http://keleyi.com/ ...

  5. 150个JS特效脚本

    收集了其它一些不太方便归类的JS特效,共150个,供君查阅. 1. simplyScroll simplyScroll这个jQuery插件能够让任意一组元素产生滚动动画效果,可以是自动.手动滚动,水平 ...

  6. <一>初探js特效魅力之全选不选反选04

    初探js特效魅力04 我们在进入到公司里面工作的时候,做一个同一个项目,经常是大家分工合作,当我们写css时,一般不写在行间,因为这样会被误操作,也就是被乱删了都不知道,这样的后果是很难检查的 ,因为 ...

  7. <一>初探js特效魅力之选项卡05

    初探js特效魅力05 接下来为大家介绍的选项卡的切换 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&quo ...

  8. 带左右箭头切换的自动滚动图片JS特效

    效果图 按钮 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www. ...

  9. 研究分析JS中的三种逻辑语句

    JS中的三种逻辑语句:顺序.分支和循环语句. 一.顺序语句 代码规范如下:1. <script type="text/javascript"> var a = 10;  ...

随机推荐

  1. Blob分析--粘连颗粒检测 基于距离变换的分水岭区域分割 盆地与原连通域求交集

    文章转自微信公众号:机器视觉那些事 *******************************************************************公众号:机器视觉那些事儿*** ...

  2. Shapley值的一个应用

    看书有这样一个问题,某互联网公司今天需要加班,需要编写一个500行的程序代码,产品经理找了三个程序员来完成.按照完成量发奖金:1号普通程序员独立能写100行,2号大神程序员独立能写125行,3号美女程 ...

  3. db2 SQL6036N解决办法

    问题背景: 数据库在进行大量的运算和数据处理的过程中,IO.CPU等资源消耗非常高的时候,强制停止数据库.db2stop force 结果数据库命令迟迟没有响应.这个时候对数据库进行其他操作均无响应, ...

  4. Educational Codeforces Round 63-D(基础DP)

    题目链接:https://codeforces.com/contest/1155/problem/D 题意:给定n个数,可以选择一段连续子段将其乘x,也可以不操作,求最大连续子段和. 思路:比赛时觉得 ...

  5. Linux权限赋予远程连接MySQL

    1.mysql -u root -p   (root)用户名 2.mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'r ...

  6. c#mysql批量更新的两种方法

    总体而言update 更新上传速度还是慢. 1:  简单的insert  速度稍稍比MySqlDataAdapter慢一点 配合dapper 配置文件 <?xml version="1 ...

  7. Nginx的rewrite应用

    Rewrite主要的功能是实现URL重写,Nginx 的 Rewrite 规则采用 PCRE Perl 兼容正则表达式的语法进行规则匹配,如相使用 Nginx 的 Rewrite 功能,在编译 Ngi ...

  8. mybatis 插入数据 在没有commit时 获取主键id

      <insert id="insert" parameterType="Mail" useGeneratedKeys="true" ...

  9. 75.iOS内存管理

    堆区和栈区 1.栈区:由编译器自动分配释放,函数的参数值,局部变量等值 2.堆区:一般由开发人员分配释放,若不释放,则可能会引起内存泄漏 NSString *string = @"abcd& ...

  10. MySQL缓存参数优化(转)

    MySQL 数据库性能优化之缓存参数优化 数据库属于 IO 密集型的应用程序,其主要职责就是数据的管理及存储工作.而我们知道,从内存中读取一个数据库的时间是微秒级别,而从一块普通硬盘上读取一个IO是在 ...