1、添加:①var a=document.createElement(“a”);②设置关键属性;③将元素添加到DOM树:a、parent.appendChild(a);b、parent.insertBefore(a,old);c、parent.replaceChlid(a,old);

2、优化:尽量少的操作DOM树,①如果同时添加父元素与子元素,应在内存中先将子元素拼到父元素下,再将父元素添加到DOM树;②如果添加多个平级子元素,应先将所有子元素放入文档片段,再将文档片段一次性添加到DOM树;

3、文档片段:①var frag=document.createDocumentFragment();②frag.appendChild(child);③parent.appendChild(frag);

4、删除:①parent.removeChild(child);②child.parentNode.removeChild(child);

5、HTML DOM常用对象:①Image:var img=new Image();②Select:a、属性:selectedIndex,options,value;b、方法:add(opt),remove(i);c、事件:onchange;③Option:创建:var opt=new Option(text,value);

6、HTML DOM常用对象之Table:①tHead:a、var thead=table.createThead();table.deleteThead();b、rows:var tr=thead.insertRow(i);//省略i表示末尾追加;thead.deleteRow(i);//i不可省略;c、cells:var td=tr.insertCell(i);//省略i表示末尾追加;tr.deleteCell(i);②tBodies:a、tBody:var tbody=table.createTBody();//没有delete;b、tFoot:同tHead;③Table.rows:a、table.insertRow(i);b、table.deleteRow(i);④row.rowIndex:标识row在整个表中的下标位置;

7、HTML DOM常用对象之Form:①获取:var form=document.forms【i/id/name】;②属性:a、length:表单中表单元素的个数;b、elements【i/id/name】:获得表单中的元素:form.elements【“name”】;③方法:submit();手动提交表单;

8、BOM:Browser Object Model,浏览器对象模型;①window:a、代替global充当全局变量;b、封装操作浏览器窗口的API;②history:保存当前窗口打开后成功访问过的url历史记录;③navigator:保存浏览器配置信息;④location:保存当前窗口正在打开的url对象;⑤screen:保存当前显示器或桌面分辨率信息;⑥event:事件发生时自动保存时间相关信息的对象;

9、打开和关闭窗口:①打开:window.open();②关闭当前窗口:window.close();

10、打开超连接方式总结:①当前窗口打开新链接,可后退:html:<a href=”url”></a>;js:open(“url”,“_self”);②在当前窗口打开新链接,不可后退:js:location.replace(“url”);③在新窗口打开新链接,可打开多个:html:<a href=”url” target=”_blank”></a>;js:open(“url”);④在新窗口打开新链接,只能打开一个窗口:*(* 内存中,每个窗口有唯一标识,name属性,相同name的窗口只能打开一个,后打开的会刷新先打开的;);打开新窗口时自定义name属性,html:<a href=”url” target=”name”></a>;js:open(“url”,“name”);

11、窗口大小:①获取窗口大小:a、获取完整窗口大小:outerWidth/outerHeight;b、或的文档显示区大小:innerWidth/innerHeight;②修改窗口大小:a、在打开窗口时定义窗口大小和位置:定义配置字符串:var config=“top=?,left=?,width=?,height=?”;打开窗口时,传入配置字符串:open(“url”,“name”,config);b、通过API调整窗口大小:resizeTo(width,height);*(窗口的大小);或resizeBy(width的增量,height的增量);*(* 修改的是要打开的窗口大小,当前窗口无法修改;);

12、窗口定位:①获取窗口左上角定位:window.screenLeft或者window.screenX;window.screenTop或者window.screenY;②修改窗口位置:moveTo(x,y);或者moveBy(x的增量,y的增量);

13、屏幕完整大小:screen.height以及screen.width;去掉任务栏后的剩余大小:screen.availHeight以及screen.availWidth;

14、事件发生时,鼠标的位置:e.screenX:相对于屏幕左上角的x坐标;e.screenY:相对于屏幕左上角的y坐标;

DOM_04之常用对象及BOM的更多相关文章

  1. DOM_05之DOM、BOM常用对象

    1.HTML DOM常用对象之Table:①创建:createTHead():createTBody():createTFoot():②删除:deleteTHead():deleteTFoot():③ ...

  2. BOM模型中常用对象 定义计数器 网页跳转 网页前进后退

    今天上午学了的BOM模型中常用对象,了解了一部分的属性 For循环的规律 外层循环控制行 内层循环控制列 <!doctype html> <html> <head> ...

  3. 添加/删除-HTML DOM 常用对象 -BOM-打开和关闭窗口- history-location

    1. 添加/删除 3步: 1. 添加一个空元素 var a=document.createElement("a"); <a></a> 2. 定义元素的关键属 ...

  4. JavaScript常用对象的方法和属性

    ---恢复内容开始--- 本文将简单介绍JavaScript中一些常用对象的属性和方法,以及几个有用的系统函数. 一.串方法 JavaScript有强大的串处理功能,有了这些串方法,才能编写出丰富多彩 ...

  5. Java的常用对象①②

    Java的常用对象① Java的常用对象有很多,这里只对lang包中常用的Object,Date(Calendar,DateFormat,Math),System,Runtime进行介绍.㈠Objec ...

  6. DOM_03之元素及常用对象

    1.修改样式:访问内联样式:elem.style.css属性名:获得其他:var style=getComputerStyle(elem):*(* 获得焦点onfocus:失去焦点onblur:): ...

  7. JavaScript 参考手册——javascript本地和内置对象、BOM、DOM

    本部分提供完整的 JavaScript 参考手册: JavaScript 本地对象和内置对象 Browser 对象(BOM) HTML DOM 对象 JavaScript 对象参考手册 本参考手册描述 ...

  8. DOM创建和删除节点、HTML DOM常用对象[转]

    创建和删除节点:——核心DOM   1. 创建单个元素节点:3步:      1. 创建空元素节点对象:         var elem=document.createElement("标 ...

  9. JavaSE_ API常用对象 总目录(11~14)

    JavaSE学习总结第11天_开发工具 & API常用对象111.01 常见开发工具介绍11.02 Eclipse和MyEclipse的概述11.03 Eclipse的下载安装及卸载11.04 ...

随机推荐

  1. Auto_increment详解

    Auto_increment Mysql AUTO_INCREMENT 1.Innodb表的自动增长列可以手工插入,但是插入的值如果是空或者0,则实际插入的将是自动增长后的值 mysql> cr ...

  2. 241. Different Ways to Add Parentheses

    241. Different Ways to Add Parentheses https://leetcode.com/problems/different-ways-to-add-parenthes ...

  3. H3C qos 简单配置

    qos 有三种服务模型 Best-Effort service(尽力而为服务模型) Integrated service(综合服务模型,简称Int-Serv) Differentiated servi ...

  4. JTA 深度历险 - 原理与实现

    转自http://www.ibm.com/developerworks/cn/java/j-lo-jta/ 在 J2EE 应用中,事务是一个不可或缺的组件模型,它保证了用户操作的 ACID(即原子.一 ...

  5. 用wordpress搭建个人博客

    一.安装WordPress所需的开发环境. 1.安装apache yum install httpd 2.安装mysql 可参照我的另一篇文章:http://www.cnblogs.com/kings ...

  6. 浅析C语言指针问题

    首先明白c语言操作符的优先级及结合性就很容易理解了. 链接 1.关于char *s 及 char s[] char *s指向的是一个字符串对象的指针,可以理解为间接引用,比如 char *s = “1 ...

  7. ubuntu 14.04 下svn + apache2 配置

    1.svn的配置 sudo apt-get install subversion // 安装svn mkdir /home/svn // 创建仓库 svnadmin create /home/svn/ ...

  8. segmentControl实现控制器的切换

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launc ...

  9. 解决VS2008 开发Windows Mobile 项目生成速度慢的问题(转)

    最近用VS2008开发Windows Mobile程序,使用C#..NET Compact Framework,发现项目生成速度比较慢.用VS2008打开项目后,开始一段时间生成速度还能忍受,时间一长 ...

  10. Chrome开发者工具不完全指南(六、插件篇)

    本篇是Chrome开发者工具的结尾篇,最后为大家介绍几款功能强大的插件.在chrome商店里面有很多插件,没事建议大家去逛逛.不过需要FQ,所以诸位请自备神器.一.皮肤插件 首先是大家期盼已久,翘首以 ...