zoukankan      html  css  js  c++  java
  • JavaScript之innerHTML

    一.初认识

    innerHTML是元素里的文字 换行 标签...
    innerHTML可进行读操作
    格式:变量名.innerHTML
    innerHTML可进行写操作
    格式:变量名.innerH=值(可是文字,也可是标签)


    二.innerHTML的读操作示例

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>InnerHtml</title>
     6 </head>
     7 <body>
     8     <input type="button" value="onclickMe" id="点我">
     9     <div id="box">
    10        <span>猝然临之而不惊</span>
    11     </div>
    12 </body>
    13 </html>
    14 <script type="text/javascript">
    15     /*获取对应元素id*/
    16     var button=document.getElementById('点我');
    17     var box=document.getElementById('box');
    18     // 读操作
    19     alert(box.innerHTML);        
    20 </script>

    上述代码在通过元素id获取了元素区域(div区域)后,进行读操作

     alert(box.innerHTML); 
    效果:
     

     因为div中的内容是:

    <span>猝然临之而不惊</span>所以它把标签也显示出来了

    三.innerHTML的写操作
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>InnerHtml</title>
    </head>
    <body>
        <input type="button" value="onclickMe" id="点我">
        <div id="box">
           <span>猝然临之而不惊</span>
        </div>
    </body>
    </html>
    <script type="text/javascript">
        /*获取对应元素id*/
        var button=document.getElementById('点我');
        var box=document.getElementById('box');
        // 写操作
        button.onclick=function(){
             box.innerHTML='无故加之而不怒';
        };         
    </script>

    对照着理解一下,写操作的格式:变量名.innerHTML='新值';

    点击按钮前:
    点击按钮后的效果:


    温馨小提示,进行写操作时,会清空元素区的所有内容,即此时div的原本内容'<span>猝然临之而不惊</span>'被全部清除,综上所诉,写操作又可以理解为替换:用新值替换旧值

    四.innerHTML的一个小例子
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>InnerHtml</title>
        <style type="text/css">
        img{
            width: 400px;
            height: 400px;
        }
        </style>
    </head>
    <body>
        <input type="button" value="onclickMe" id="点我">
        <div id="box">
        </div>
    </body>
    </html>
    <script type="text/javascript">
        /*获取对应元素id*/
        var button=document.getElementById('点我');
        var box=document.getElementById('box');
        var a=1;
        // 写操作
        button.onclick=function(){
             box.innerHTML+='<img src="img'+a+'.jpg" alt=""/>';
             // 变换图片地址为img2.jpg,以此类推
             a+=1;
             // 当a>2时,图片地址回到原点--重复两张图片
             if(a>2){
                a=1;
             }
        };         
    </script>
    
    

    解释一下代码,一如既往,先获取input元素和div元素id,进行写操作赋予了img标签,可以看到img标签的属性值src是通过a来控制在img1.jpg和img2.jpg(我只有这两张同级别的图),接着随a自加1,图片地址以此类推,当a>2时,a=1-->又回到img1.jpg图片了

    看下初始效果:
    这时候没有进行点击,也就是没有进行写操作,连右边控制台的div里也是空的
    点击第一次的效果:
    写入了img1.jpg图片,注意右边的控制台中div里是不是增加了<img src="img1.jpg" alt="">这行代码

     当我们执行完写入操作

     box.innerHTML+='<img src="img'+a+'.jpg" alt=""/>';
    后面的a自加1
     a+=1;
    图片地址变换成img2.jpg
    这时候点击第二次,效果:

    我要表达的在这:写操作要注意两点,一个是会清空原先的所有内容,第二点就是这个例子中,可以写入元素标签,你们注意到我在上面写的img样式吗,原因在此,事先控制好图片大小

    喜欢的小可爱双击哦!

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>innerHTML属性</title>
        <style type="text/css">
        #div1{
            width: 200px;
            height: 200px;
            border: 1px dashed gray;
        }
        </style>
    </head>
    <body>
        <span id="spanid">兰叶春葳蕤,桂华秋皎洁</span>
        <div id="div1"></div>
        <input type="button" value="可坏!" onclick="innerhtml();">
        <!-- 
        innerHTML属性
        这个属性不是dom的组成部分,但是大多数浏览器都兼容
            *第一个作用:获取文本内容
             **第二个作用:向标签里面设置内容,可以是HTML代码
         -->
        <script type="text/javascript">
        function innerhtml(){
        //获取文本内容
        var span = document.getElementById("spanid");
        alert(span.innerHTML);
        //向div中添加表格
        div1.innerHTML="<table border=1px><tr><td>明月出天山</td><td>苍茫云海间</td></tr><tr><td>长风几万里</td><td>吹度玉门关</td></tr>"
        }
        </script>
    </body>
    </html>
    
    

    点击前:

    点击后:

     

  • 相关阅读:
    【乱侃】How do they look them ?
    【softeware】Messy code,some bug of Youdao notebook in EN win7
    【随谈】designing the login page of our project
    【web】Ad in security code, making good use of resource
    SQL数据库内存设置篇
    关系数据库的查询优化策略
    利用SQL未公开的存储过程实现分页
    sql语句总结
    sql中使用cmd命令注销登录用户
    SQLServer 分页存储过程
  • 原文地址:https://www.cnblogs.com/zjm1999/p/10222129.html
Copyright © 2011-2022 走看看