zoukankan      html  css  js  c++  java
  • js中script的上下放置区别 , Dom的增删改创建

    回顾

    javascript分为三部分:
            1、ECMAScript5.0 es6(阮一峰) es7 es8    es6中有类的概念
                声明变量 var  let(es6中语法)
                内置函数 Date Math.random
                if else  switch while do-while  for
                
            2、DOM  Document Object Model
                获取DOM事件的三种方式
                getElementById()
                getElementsByTagName()
                getElementsByClassName()
                DOM的三步走
                1、事件对象
                2、事件、
                3、事件驱动
    
                值操作: <div></div> too liang
                oDiv.innerText='too liang';仅仅设置文本
                oDiv.innerHTML='<h2>too liang</h2>';文本和标签一起渲染
                oInput.value='alex';仅仅是对表单控件有效
                标签属性操作;
                    设置类名:oDiv.className+=' active';追加类名、
                    设置id:oDiv.id='box';
                样式操作:
                    oDiv.style.(css中所有的样式属性)
                    注意驼峰体:如果margin-left 使用js的时候marginLeft
            3、BOM

    <script></script>在head和body中放置的区别

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <script>
            //加载顺序:1DOM元素加载 2图片加载
    
            //1等待DOM和图片资源加载完成之后才调用window.onload后面的方法
            //2事件覆盖事件,也即同时存在多个window.noload时,后面的覆盖前面的
            window.onload=function () {
                // var oBtn=document.getElementById('btn');
                // console.log(oBtn);
                function $(idName){
                    return document.getElementById(idName);
                }
                $('btn').onclick=function(){
            。。。。。。
    
                };
    
            }
        </script> <!--没有操作DOM时可以将script放在这里面,如果要使用DOM的相关操作,使用window.onload,建议最好写在body里面-->
    </head>

    DOM的增删改查

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
    <button id="btn">追加</button>
    <button id="del">删除</button>
    <div id="box">
        <p>测试段落</p>
    
    </div>
        <script>
            //加载顺序:1DOM元素加载 2图片加载
    
            //1等待DOM和图片资源加载完成之后才调用window.onload后面的方法
            //2事件覆盖现在,同时存在多个window.noload时,后面的覆盖前面的
            window.onload=function () {
                // var oBtn=document.getElementById('btn');
                // console.log(oBtn);
                function $(idName){
                    return document.getElementById(idName);
                }
                $('btn').onclick=function(){
                    //1DOM的创建
                    var oP=document.createElement('p');
                    //2 DOM的追加
                    $('box').appendChild(oP);
                    //3 DOM的修改
                    oP.innerText='alex';
                    oP.id='p1';//设置id
                    var oA=document.createElement('abc');//自定义创建
                    oA.innerText='321';
                    oA.id='abc';
                    $('box').insertBefore(oA,oP);//在oA之前插入
    
                };
                //4 DOM的删除操作
                $('del').onclick=function(){
                    $('box').removeChild($('p1'));
                    $('box').removeChild($('abc'));
                }
            }
        </script>
    </body>
    </html>

    应用场景分析

    # 如果是一开始页面有初始化渲染开销;应用:频繁的切换:display:none|block  或者 追加className 删除className
    #如果是DOM的创建和删除 如果你是频繁的切换,对DOM的性能消耗很大,所以最好应用在少量的切换上面
  • 相关阅读:
    [MAC]如何抹掉 Mac 磁盘
    [MAC]出售、赠送或折抵 Mac 前该怎么做
    转载 软件项目计划如何编写举例
    GIT
    AWR实战分析之----direct path read temp
    ASM 磁盘组的的scrip
    巨杉db
    High waits on control file sequential read
    如何减小SQL 的物理读,。
    block size大小
  • 原文地址:https://www.cnblogs.com/mmyy-blog/p/9536542.html
Copyright © 2011-2022 走看看