回顾

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的性能消耗很大,所以最好应用在少量的切换上面

js中script的上下放置区别 , Dom的增删改创建的更多相关文章

  1. JS中isPrototypeOf 和hasOwnProperty 的区别 ------- js使用in和hasOwnProperty获取对象属性的区别

    JS中isPrototypeOf 和hasOwnProperty 的区别 1.isPrototypeOf isPrototypeOf是用来判断指定对象object1是否存在于另一个对象object2的 ...

  2. (网页)Angular.js 中 copy 赋值与 = 赋值 区别

    转自st.gg Angular.js 中 copy 赋值与 = 赋值 区别 为什么用 $scope.user = $scope.master; $scope.master 会跟着 $scope.use ...

  3. js中的substr和substring区别

    js中的substr和substring区别 Substring: 该方法可以有一个参数也可以有两个参数. (1)  一个参数: 示例: var str=“Olive”: str.substring( ...

  4. JS 中的require 和 import 区别整理

    ES6标准发布后,module成为标准,标准的使用是以export指令导出接口,以import引入模块,但是在我们一贯的node模块中,我们采用的是CommonJS规范,使用require引入模块,使 ...

  5. 浅谈JS中的!=、== 、!==、===的用法和区别 JS中Null与Undefined的区别 读取XML文件 获取路径的方式 C#中Cookie,Session,Application的用法与区别? c#反射 抽象工厂

    浅谈JS中的!=.== .!==.===的用法和区别   var num = 1;     var str = '1';     var test = 1;     test == num  //tr ...

  6. JS实例—DOM的增删改

    <!DOCTYPE html><html lang="zh"><head> <meta charset="UTF-8" ...

  7. 第 9 章 DOM 的增删改查

    DOM 的增删改查 本文不会详细讲解,只是简单提及知识要点,详细可以参考<dom高级编程>. 1. document.write document.write('<h1>创建节 ...

  8. JavaScript之DOM的增删改查

    JavaScript的组成: 1. ECMAScript-语法规范 2. Web APIs(浏览器提供的工具) (1).BOM (浏览器对象模型) (2).DOM (文档对象模型) 今天就来讲讲DOM ...

  9. PHP程序中使用PDO对象实现对数据库的增删改查操作的示例代码

    PHP程序中使用PDO对象实现对数据库的增删改查操作(PHP+smarty) dbconn.php <?php //------------------------使用PDO方式连接数据库文件- ...

随机推荐

  1. spark集群使用hanlp进行分布式分词操作说明

    本篇分享一个使用hanlp分词的操作小案例,即在spark集群中使用hanlp完成分布式分词的操作,文章整理自[qq_33872191]的博客,感谢分享!以下为全文:   分两步: 第一步:实现han ...

  2. nginx只允许移动端访问( 判断拦截pc浏览器访问)

    set $mobile_request '0'; if ($http_user_agent ~* (Android|webOS|iPhone|iPod|BlackBerry)) { set $mobi ...

  3. ANTS Performance Profiler和ANTS Memory Profiler

    使用ANTS Performance Profiler&ANTS Memory Profiler工具分析IIS进程内存和CPU占用过高问题   一.前言 最近一段时间,网站经常出现两个问题: ...

  4. eval 日期对象

    js中,eval相当于python中的eval(表达式)和exec(代码)的集合. var d = new Date();    #申明一个新的日期对象,方便之后调用,它的方法getDate();ge ...

  5. 创建virtualenv虚拟环境

    这个部分知识我在之前的随笔里记过笔记. 传送门:http://www.cnblogs.com/0bug/p/8598458.html 本文只演示Windos下virtualenv环境的使用: 首先,确 ...

  6. IO流中File文件最常用和直接的用法

    一.File (一)概述 1.File: 1)文件和目录(文件夹)路径名的抽象表示形式 2)注意: 可以表示文件夹与文件,即路径与文件 抽象概念,即路径与文件是否存在不确定   2.构造方法 1)Fi ...

  7. LibreOffice转换文档到pdf时中文乱码

    根据我的测试,LibreOffice转换文档到pdf乱码主要有三个方面的原因: 1.centos缺少中文字体 2.jdk缺少中文字体 3.LibreOffice缺少中文字体. 解决该问题需要将wind ...

  8. Android keystore相关

    一.生成keystorekeytool -genkey -alias test.keystore -keyalg RSA -validity -keystore test.keystore 二.查看 ...

  9. 【深度学习】BP反向传播算法Python简单实现

    转载:火烫火烫的 个人觉得BP反向传播是深度学习的一个基础,所以很有必要把反向传播算法好好学一下 得益于一步一步弄懂反向传播的例子这篇文章,给出一个例子来说明反向传播 不过是英文的,如果你感觉不好阅读 ...

  10. Svn过滤

    http://blog.csdn.net/hemingwang0902/article/details/6904205