摘要: property,attribute都作“属性”解,但是attribute更强调区别于其他事物的特质/特性。而在JavaScript中,property和attribute更是有明显的区别。众所周知,setAttribute是为DOM节点设置/添加属性的标准方法:var ele = document.getElementById("my_ele");ele.setAttribute("title","it's my element");但很多时候我们也这样写:ele.title = "it's my elem 阅读全文
posted @ 2013-10-26 18:36 白夜说 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 一、js继承问题//有关于原型继承的代码如下:function Person(name) { this.name = name;}Person.prototype = { getName : function() { return this.name; }}function Student(name, id) { Person.call(this, name) this.id = id;}//接下来的一行,我们提供了有三种写法://第一种:Student.prototype = Person.prototype;//第二种:Student.prototype = new Perso... 阅读全文
posted @ 2013-10-20 16:10 白夜说 阅读(449) 评论(0) 推荐(0) 编辑
摘要: 1、方法定义call方法:语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]])定义:调用一个对象的一个方法,以另一个对象替换当前对象。说明:call 方法可以用来代替另一个对象调用一个方法。call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj。apply方法:语法:apply([thisObj[,argArray]])定义:应用某一对象的一个方法,用另一个对象替换当前对象。说明:如果 argArray 不是一个有效的数组或者不是 arg 阅读全文
posted @ 2013-10-18 21:49 白夜说 阅读(246) 评论(0) 推荐(0) 编辑
摘要: parse用于从一个字符串中解析出json对象,如var str = '{"name":"huangxiaojian","age":"23"}'结果:JSON.parse(str)Objectage:"23"name:"huangxiaojian"__proto__:Object注意:单引号写在{}外,每个属性名都必须用双引号,否则会抛出异常。stringify()用于从一个对象解析出字符串,如var a = {a:1,b:2}结果:JSON.stringif 阅读全文
posted @ 2013-09-30 21:32 白夜说 阅读(912) 评论(0) 推荐(0) 编辑
摘要: 首先了解一下window.name这个东西是什么。 name 在浏览器环境中是一个全局/window对象的属性,当在 frame 中加载新页面时,name 的属性值依旧保持不变并且name 属性仅对相同域名的 frame 可访问。由此我们可以继续下面的问题。有三个页面:a.com/app.html:应用页面。a.com/proxy.html:代理文件,一般是一个没有任何内容的html文件,需要和应用页面在同一域下。b.com/data.html:应用页面需要获取数据的页面,可称为数据页面。实现起来基本步骤如下:在应用页面(a.com/app.html)中创建一个iframe,把其src指向数. 阅读全文
posted @ 2013-09-28 23:03 白夜说 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 页面域关系:a.html所属域A:www.A.comb.html所属域B:www.B.com问题本质:js对跨域iframe访问问题,因为要控制a.html中iframe的高度和宽度就必须首先读取得到b.html的大小,A、B不属于同一个域,浏览器为了安全性考虑,使js跨域访问受限,读取不到b.html的高度和宽度.解决方案:引入代理代理页面c.html与a.html所属相同域A,c.html是A域下提供好的中间代理页面,假设c.html的地址:www.A.com/c.html ,它负责读取location.hash里面的width和height的值,然后设置与它同域下的a.html中的ifr 阅读全文
posted @ 2013-09-28 22:56 白夜说 阅读(1312) 评论(0) 推荐(0) 编辑
摘要: 基本类型与引用类型ECMAScript的的变量有两种类型:基本类型(值类型):简单数据段引用类型:多个值构成的对象在变量赋值结束后,解析器必须知道这个变量时基本数据类型还是引用类型,需要注意的是string在js中是值类型。复制的差异值类型的复制会在内存中创建副本,所以彼此间不会影响,但是引用类型只是将变量的引用复制,其指向的仍然是一个对象,会相互影响:1 var a = {};2 a.a = 6;3 var b = a;4 b.a = 66;5 alert(a.a);//66这是一个典型的例子,值类型的就不举例了。执行环境与作用域PS:作用域是面试官的最爱,也是我们经常栽跟头的地方,这块我们 阅读全文
posted @ 2013-09-27 20:19 白夜说 阅读(197) 评论(0) 推荐(0) 编辑