• 动态创建dom元素 超级菜鸟


    效果图如上所示:

    思维nav:就相当于qq空间发表动态(说说),在输入框里输入内容,点击提交(发表),内容就呈现在下面的动态栏里.我这里是准备写一个招聘的app,大家可以随便想象下哪些情况会遇到动态创建dom元素。

    代码展示如下,具体的css就不用多说,主要是写jquery

     1 <body>
     2 <div class="szk-newProject-header clearfix">
     3     <div class="szk-newProject-left fl">
     4         <img src="img/szk-1.png"/><a href="#">返回</a>
     5     </div>
     6     <div class="szk-newProject-center fl">
     7         <a href="#">新建项目</a>
     8     </div>
     9     <div class="szk-newProject-right fr">
    10         <a href="#"><img src="img/szk-2.png"/></a>
    11     </div>
    12 </div><!--szk-newProject-header-->
    13 <div class="inner">
    14     <input type="text" class="shuru" placeholder="请输入文字">
    15     <div class="kong">
    16         <input type="button" class="tijiao" value="提交">
    17     </div>
    18 </div>
    19 <div class="cont">
    20     <div class="inner">
    21         <img src="img/tou_03.jpg"/>
    22         <div class="fr">
    23             <time>2016年12月2日</time>
    24             <p>我可以发表动态了,很开心很开心</p>
    25         </div>
    26     </div>
    27 </div>
    28 </body>
     1   <script src="js/jquery-3.1.0.min.js"></script>
     2     <script>
     3         $(function(){
     4            var $shuru=$(".shuru").val("")
     5             $(".tijiao").on("click",function(){
     6                 //先创建一个Inner,然后将Inner插入到cont里面
     7                 var Inner=$("<div class='inner'>")
     8                 $(".cont").append(Inner);
     9                 //在Inner里面插入图片
    10                 Inner.append($("<img>",{src:"img/tou_03.jpg"}));
    11                 //再创建一个fr,将其放入Inner里面
    12                 var fr=$("<div class='fr'>");
    13                 Inner.append(fr);
    14                 //再创建一个time和p标签,把他们放入fr里面
    15                 var time=$("<time>2016.12.2</time>");
    16                 var p=$("<p></p>");
    17                 fr.append(time)
    18                 fr.append(p)
    19                 $(p).html($(".shuru").val())
    20                 //再清空输入框
    21                 $shuru=$(".shuru").val("")
    22             })
    23         })
    24     </script>

     用javascript实现上面的效果:

     

     1 <!DOCTYPE html>
     2 <html ng-app="myapp">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>Title</title>
     6     <link rel="stylesheet" href="css/style.css" type="text/css">
     7     <script src="js/common.js"></script>
     8     <script src="js/jquery-3.1.0.min.js"></script>
     9     <script>
    10         window.onload=function(){
    11             var shuRu=document.getElementsByClassName("shuru")[0];
    12             var tiJiao=document.getElementsByClassName("tijiao")[0];
    13             var cont=document.getElementsByClassName("cont")[0];
    14             var Inner=cont.getElementsByClassName("inner")[0];
    15             tiJiao.onclick=function(){
    16                 //先判断输入框有没 有内容,如果有,就把内容添加到下面的cont里面,而这个cont里面的内容用该是动态的增加
    17                 if(shuRu.value!=null){
    18                     //在body里边创建一个div,把这个div插入到cont里
    19                     var inner2=document.createElement("div");
    20                     inner2.className="inner";
    21                  //   cont.appendChild(inner2);最新的消息在最后面
    22                     cont.insertBefore(inner2,cont.children[0])//最新的消息在最前面
    23                     var Img=document.createElement("img")
    24                     Img.src="img/tou_03.jpg";
    25                     inner2.appendChild(Img)
    26                     var fr=document.createElement("div")
    27                     fr.className="fr";
    28                     inner2.appendChild(fr)
    29                     var time=document.createElement("time")
    30                     fr.appendChild(time)
    31                     var p=document.createElement("p")
    32                     fr.appendChild(p)
    33                     p.innerHTML= shuRu.value;
    34                     var date=new Date()
    35                     time.innerHTML=date.toLocaleString();
    36                     shuRu.value=null
    37                 }else {
    38                 }
    39             }
    40         }
    41     </script>
    42 </head>
    43 <body>
    44 <div class="szk-newProject-header clearfix">
    45     <div class="szk-newProject-left fl">
    46         <img src="img/szk-1.png"/><a href="#">返回</a>
    47     </div>
    48     <div class="szk-newProject-center fl">
    49         <a href="#">新建项目</a>
    50     </div>
    51     <div class="szk-newProject-right fr">
    52         <a href="#"><img src="img/szk-2.png"/></a>
    53     </div>
    54 </div><!--szk-newProject-header-->
    55 <div class="inner">
    56     <input type="text" class="shuru" placeholder="请输入文字">
    57     <div class="kong">
    58         <input type="button" class="tijiao" value="提交">
    59     </div>
    60 </div>
    61 <div class="cont">
    62     <div class="inner">
    63         <img src="img/tou_03.jpg"/>
    64         <div class="fr">
    65             <time>2016年12月2日</time>
    66             <p>我可以发表动态了,很开心很开心</p>
    67         </div>
    68     </div>
    69 </div>
    70 </body>
    71 </html>

     

  • 相关阅读:
    .NET日志系统
    新建elasticsearch 车辆表索引
    mysqlconnectjava.jar下载地址
    mac安装mysql5.7
    window使用logstashinputjdbc同步数据到es
    如何降低node 包版本
    ansible的介绍与hosts文件(一)
    ansible的模块的使用(二)
    爬虫分布式爬虫(未完成)
    前端页面布局链接
  • 原文地址:https://www.cnblogs.com/ouyangyulin/p/6126706.html
Copyright © 2020-2023  润新知