摘要: 关于各种浏览器模式,网上已经有许多文档和资料了,但是很少有能够完全将几个概念阐述清楚的。大部分的资料稍显过时,有些内容可能已经不再适用了。本文中笔者将尽可能将几个概念阐述清楚,并去掉一些过时的内容,仅保留必要的干货。想必你一定知道浏览器有个标准(Standards)模式和一个怪异(Quirks)模式,或许你还听说过有个“准标准(Almost Standards)”模式。而当你打开 Internet Explorer 的时候,又看到了什么浏览器模式、文档模式,还有什么兼容性视图等等...这些都是什么?啥是浏览器模式,啥是文档模式?标准模式和准标准的模式有什么区别?IE9兼容性视图和真正的IE9有 阅读全文
posted @ 2012-10-23 08:46 andy-liu- 阅读(1190) 评论(0) 推荐(1) 编辑
摘要: z-index 属性设置元素的堆叠顺序。拥有更高堆叠顺序的元素总是会处于堆叠顺序较低的元素的前面。注释:元素可拥有负的 z-index 属性值。注释:Z-index 仅能在定位元素上奏效(例如 position:absolute;)!不起作用的原因第一个原因:Z-index 仅能在定位元素上奏效<style type="text/css"> #a{width:200px;height:100px;position:relative; background-color:red;z-index:100} #b{width:300px;height:200px;bac 阅读全文
posted @ 2012-10-17 10:12 andy-liu- 阅读(994) 评论(0) 推荐(0) 编辑
摘要: 这两天调试的时候总是出现这个错误提示 很是让人苦恼最后发现 阅读全文
posted @ 2012-10-16 21:38 andy-liu- 阅读(291) 评论(0) 推荐(0) 编辑
摘要: /** * * 栈:是一种可以限制插入和删除项的数据结构。其遵循LIFO(last-in-first-out)后入先出的规则,也就是最新推入的被最早的弹出,而这些操作只发生在一个位置,栈的顶部。 * 模拟栈的实现需要使用:push()和pop()方法。 * push():可以接受任意个参数,把它们逐个推入到数组的末尾,返回新的数组的额长度 * pop(): 不需要参数,直接弹出数组末尾的项,并将值返回 */ var colors = ['red','yellow','blue']; var push = colors.push('aaa& 阅读全文
posted @ 2012-10-02 16:46 andy-liu- 阅读(166) 评论(0) 推荐(0) 编辑
摘要: /** * javascript 中的reduce方法 和 reduceRight方法 * 这两个方法是ECMAScript5中新增的方法 * 都接受两个参数:第一个是用来迭代的数组的函数,这个函数有四个参数分别是,前一个值,当前值,项的索引,数组对象。然而这个函数的任何值都会作为第一个参数自动传给下一项。第二个是作为第一个函数中第一个参数的初始值 * * reduceRight 和 reduce一样,只是他是从右向左进行迭代的 * 支持的浏览器有,IE9+,Firefox3+,Safari4+,Opera 10.5+,chrome */ var nums = [1,2,3,... 阅读全文
posted @ 2012-10-02 16:18 andy-liu- 阅读(285) 评论(0) 推荐(0) 编辑
摘要: /* javascript 数组对象中的迭代方法 * ECMAScript5为数组定义了5个迭代方法。每个方法都接受两个参数,第一个是进行迭代的函数,第二个是该函数的作用域对象【可选】。 * 进行迭代的函数接受三个参数,第一个是数组中要进行迭代的元素的值,第二个是数组候总要进行迭代的元素的位置,第三个是迭代数组本身。 * 1. every() 对数组中的每一项运行给定的函数,如果该函数对每一项都返回true,则返回true * 2. filter() 对数组中的每一项运行给定的函数,返回该函数返回true的项组成的数组。 * 3. forEach() 对数组中的每一项运行给定的函数... 阅读全文
posted @ 2012-10-02 15:49 andy-liu- 阅读(1572) 评论(0) 推荐(0) 编辑
摘要: 一、变量变量可以用来保存两种类型的值: 基本类型值和引用类型的值1.基本类型值具有以下特点基本类型值在内存中占据固定大小的空间,因此被保存在栈内存中。一个变量向另一个变量复制基本类型的值,会创建这个值的一个副本。2. 引用类型的值具有以下特点引用类型的值是对象,保存在堆内存中。包含引用类型值得变量实际上包含的并不是引用类型本身,而是一个指向该对象的指针。从一个变量向另一个变量复制引用类型的值,复制的其实是指针,因此两个变量最终都指向同一个对象。3. 确定一个值的类型确定一个值是哪些基本类型可以使用 typeof操作符。确定一个值是哪些引用类型可以使用instanceof 操作符。var a = 阅读全文
posted @ 2012-10-01 22:39 andy-liu- 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 使用label语句可以在javascript中添加标签以便将来使用。label的语法:label:statementlabel 可以break或者continue联合使用//label: statement var temp=0; start: for(var i=0; i<5; i++) { for(var m=0; m<5; m++) { if(m==1) { break start; } temp++; } } alert(temp);弹出的结果是1 如果不加直接break而不是 break start 的话弹出的将是5; 阅读全文
posted @ 2012-10-01 20:05 andy-liu- 阅读(6440) 评论(0) 推荐(0) 编辑
摘要: break 跳出循环体 强制执行循环体以外的代码continue 跳出当前循环 继续执行下一次循环for(var i=0; i<5; i++) { alert(i); if(i==3) { alert('break'); break; } if(i==2) { alert('continue'); continue; } alert('继续'); }执行这段代码你会看到首先弹出0 继续 然后1 继续 然后 2 continue 这时将跳出本次循环 即不弹出继续 然后执行下一次循环 到break时整个循环就终止了。 阅读全文
posted @ 2012-10-01 19:53 andy-liu- 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 在javascript中有5中基本数据类型分别是:Undefined、Null、Boolean、Number、String。和一个复杂数据类型:Object。一、Undefined1. Undefined类型只有一个值undefined。当用var声明一个值并未对其进行初始化的时候,这个变量的值就是undefined。var boss; alert(typeof boss); 2. 包含undefined值得变量与尚未定义的变量是不一样的。var boss; alert(boss); // undefined alert(message); // 报错 Uncaught ReferenceEr 阅读全文
posted @ 2012-10-01 16:33 andy-liu- 阅读(196) 评论(0) 推荐(0) 编辑