JavascriptDom编程艺术学习笔记一
来源:互联网 发布:库里场均数据 编辑:程序博客网 时间:2024/05/22 04:52
- 最好的做法是把
<script>
标签放在HTML文档的最后,</body>
标签之前。 - 现在大多数浏览器的脚本默认是Javascript,所以
<script>
标签中不用再包含传统的type="text/javascript"
属性。 - JS是一种解释性、弱类型语言。JS是区分大小写的语言。
- 注释:JS中常用的行注释是://,块级注释是/**/。
- 不推荐在JS中使用
<!---->
注释,虽然JS解释器对<!--
的处理与“//”一样,但它会把-->
视为注释的一部分。 var mood = "happy", age="20";
这种声明和赋值是最有效率的方法。因为这种组合在一起的语句,以减少整个脚本的执行时间。- 变量命名:较长的变量名可以适当插入下划线,如“my_first_teacher”。函数名、方法名和对象属性名采用驼峰法命名,如”firstClassName”。注意构造函数命名,采用全部首字母大写命名法,如“FirstSchool()”
- 变量作用域,可以用var关键字设定。如果某个函数中使用了var,那这个变量就被视为一个局部变量,它只存在于这个函数的上下文中。反之,没有使用var,则这个变量被视为一个全局变量,如果脚本里已经存在一个和它同名的全局变量,这个函数就会改变那个全局变量的值。
function square (num) { sum = num * num; //此处未加var,sum是全局变量 return sum;}var sum = 50; //定义全局变量sumvar numbers = square(20); //运行函数,重新定义全局变量sum,会覆盖原来sum的值console.log(sum); //输出400function square (num) { var sum = num * num; //定义局部变量sum return sum;}var sum = 50; //定义全局变量sumvar numbers = square(20); //运行函数,会定义一个局部变量sum,但当函数运行结束,局部变量sum也会销毁console.log(sum); //此时输出的是全局变量sum,输出50
- DOM中的“D”:一个网页就是一个文档对象。
- DOM中的“O”:JS中有三种对象,分别是用户自定义对象、内建对象(JS提供的对象,如Array,Object,Math和Date等)及宿主对象(由浏览器提供的对象,如window等,即BOM对象)。
- DOM中的”M:即是一个网页对应的一棵树,文档的一颗家谱树。
- 常用的三种节点类型:文本节点(textNode)、属性节点(attributeNode)和元素节点(elementNode);具体可以查看HTML中DOM解析篇1–nodeType\nodeValue\nodeName
- 获取元素的方法:
getElementById():返回一个对象object;
getElementsByTagName():返回一个对象数组;
getElementsByClassName():返回一个对象数组;该方法是HTML5 DOM中新增的方法,有部分浏览器还不适用,所以在使用前要记得检测该方法是否存在。
//下面的代码可以用已有的DOM方法实现getElementsByClassName()function getElementsByClassName (node, classname) { if(node.getElementsByClassName) { //使用现有方法 return node.getElementsByClassName(classname); } else { var results = new Array(); var elems = node.getElementsByTagName("*"); for(var i=0; i<elems.length; i++) { if(elems[i].className.indexOf(classname) != -1) { results[results.length] = elems[i]; } } return results; }}//查找document中,类名是tips的所有节点var ss = getElementsByClassName(document, 'tips'); console.log(ss);
6.getAttribute()获取节点的属性,该方法不属于document对象,不能通过document对象调用,只能通过元素节点对象调用。
7.setAttribute()方法用来设置节点属性,同样不适用于document对象。注意:setAttribute()方法做出的修改不会反映在文档本身的源代码里。
因为DOM的工作模式:先加载文档的静态内容,再动态刷新,动态刷新不影响文档的静态内容。这正是DOM的威力:对页面内容进行刷新却不需要在浏览器里刷新页面。
阅读全文
0 0
- JavascriptDom编程艺术学习笔记一
- JavaScriptDom编程艺术 笔记整理(一) 图片库
- JavascriptDOM编程艺术学习笔记2
- JavascriptDOM编程艺术学习笔记3
- JavascriptDOM编程艺术学习笔记4
- JavascriptDom编程艺术学习笔记二
- JavascriptDom编程艺术学习笔记三
- JavaScriptDom编程艺术 笔记整理(二)
- JavaScriptDOM编程艺术笔记整理(四) 动画
- 共享onload事件的使用(javascriptDOM编程艺术学习笔记)
- JavaScriptDOM编程艺术笔记整理(三) 对于CSS的操作
- JavaScriptDOM编程艺术读书笔记(3)
- javascriptDOM笔记(一)
- 《JavaScript DOM编程艺术》学习笔记<一>
- javascript_DOM 编程艺术学习笔记(一)
- 《Unix编程艺术》笔记(一)
- 学习《Oracle 9i10g编程艺术》的笔记 (一)
- 程序员编程艺术学习笔记(一)字符串左旋问题
- 解决refreshing gradle project 和Building gradle project info 一直卡住\速度慢
- matlab 2017b破解版安装教程
- Spring MVC学习总结(18)——SpringMVC事务Transactional注解使用总结
- 消息系统介绍及选型依据
- gsoap wcf https
- JavascriptDom编程艺术学习笔记一
- windows安装cx_Oracle
- Jquery事件监听
- Elasticsearch/Kibana/X-pack/Logstash 6.0.0版本的安装
- c++ primer 13.1.4节练习(合成的拷贝构造函数与自定义拷贝函数区别)
- linux安装Tomcat(CentOS 7)
- android拍照时返回桌面
- log4j配置
- new Date()不同日期格式结果不同