类扩展/* EditInPlaceField类 */ /* 扩展函数 */ function extend(subClass, superClass) {var F = function() {};F.prototype = superClass.prototype;subClass.prototype = new F();subClass.prototype.constructor = subClass;subClass.superclass = superClass.prototype;if(superClass.prototype.constructor == Object.prototype.constructor) {superClass.prototype.constructor = superClass;} } function EditInPlaceFiel...
本文实例讲述了JS克隆,属性,数组,对象,函数。分享给大家供大家参考,具体如下:<script type="text/javascript"> /* 克隆原型得到对象 */ function clone(object) {function F() {}F.prototype = object;return new F; } var Person = {name: default name,getName: function() {return this.name;} }; var reader = clone(Person); console.log(reader.getName()); // This will output default name. reader.name = John Smi...
本文实例讲述了JS匿名函数类生成方式。分享给大家供大家参考,具体如下:<script type="text/javascript"> var Book = (function() {// 私有静态属性var numOfBooks = 0;// 私有静态方法function checkIsbn(isbn) {if(isbn == undefined || typeof isbn != string) {return false;}return true;}// 返回构造函数return function(newIsbn, newTitle, newAuthor) { // implements Publication// 私有属性var isbn, title, author;// ...
本文实例讲述了JS匿名函数。分享给大家供大家参考,具体如下:/* 匿名函数*/ (function() { var foo = 10; var bar = 2; alert(foo * bar); })(); /* 匿名函数,带参数 */ (function(foo, bar) { alert(foo * bar); })(10, 2); /* 匿名函数返回值 */ var baz = (function(foo, bar) { return foo * bar; })(10, 2); // baz will equal 20. /* 匿名函数关闭 */ var baz; (function() { var foo = 10; var bar = 2; baz = function()...
offsetTop:以 CSS 像素为单位返回元素上边框距其 offsetParent 上边框的距离。 offsetLeft:以 CSS 像素为单位返回元素相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置。 这里最主要的是找准 offsetParent。 其实很简单,比如我们要计算A元素的 offsetTop, 那么先要找到A元素的offsetParent,A元素的offsetParent应该是离A元素最近的父元素,并且父元素设置了position:relative或absolute属性,如果没有匹配到任何...
代码如下:function P(name){ this.name=name; this.p1=function(){ alert(Parent Constructor); } return this; } function C(name,id){ //this.method=P; //this.method(name); //1st method //P.call(this,name); //2nd method P.apply(this,new Array(name));//3rd method this.id=id; this.dis=function(){ alert(this.name); } } function dis(){ alert(this.name); } function t(){ var cc=new C(N,Id); cc.dis(); cc.p1(); ...
/* *(REFER TO P151) *@time 2008-11-25 */ 代码如下://没有返回值 function Test0(){ this.name=test0; } var test0=new Test0; //debugger; alert(test0);//输出[Object] alert(test0.name);//输出test0 //return 一个字符串对象 function Test(){ this.name=test; return new String(123);// 返回字符串对象 } var test=new Test(); alert(test);//输出123 alert(test.name);//输出undefined,说明有构造函数创建的对象是字符串...
然而,在今天一些大型的WEB交互项目中,比如大型的WebGame项目,JavaScript事件冒泡影响是值得重视的。本文通过一个简单的例子来讲解JavaScript事件冒泡及使用注意事项。 如果你对JavaScript事件冒泡还没有什么印象,不妨先看看我之前写的一篇博客《JavaScript事件冒泡简介及应用》。本文讲究实用,不在对JavaScript事件冒泡基础知识进行过多的阐述。 在文章开始之前,现在先看看下面这样一个需求:下面HTML假设描述的是一个WebGam...
onerror语法使用 onerror 默认有三个入参: ?msg: 错误信息 ?url:错误所在文件 ?line: 错误所在代码行,整型 window.onerror = function(msg, url, line){ // some code }; 对于 <body onerror=”some code”>形式的,可以通过arguments[0]、arguments[1]、arguments[2]依次获取参数。 js中我们最常用的就是js容错window.onerror=function(){return true;}基本特性 可以通过设置returnValue=true,或直接return true来阻止浏览器...
本文实例分析了JS深度拷贝Object Array。分享给大家供大家参考,具体如下:function cloneObj(o) {var isArray = o instanceof Array;var isObject = o instanceof Object;if (!isObject) return o;var n = (isArray [] : {});for (var k in o) n[k] = cloneObj(o[k]);return n; }遇到的问题 typeof [] 结果为 object typeof {} 结果为 object [] instanceof Array 结果为 true {} instanceof Object 结果为 true [] instanceof O...
本文实例讲述了jQuery设置Cookie及删除Cookie的方法。分享给大家供大家参考,具体如下: 这是一个jQuery cookie的使用例子,通过本示例的学习希望朋友们能熟悉在引入jquery.cookie.js插件后,如何去使用它,你可以了解到cookie天数设置、日期设置、多个cookie的设置、如何获取Cookie、通过 date 对象设置过期日期为 3 天后的那天、设置有效期天数等小技巧。jQuery Cookie Plugin$(function() { var COOKIE_NAME = 'test_cookie'; v...
本文实例讲述了javascript常见数字进制转换的方法。分享给大家供大家参考,具体如下: 基本思路是先把其他进制的转化成 十进制,然后再转化。这个过程是利用parseInt函数,例如把一个16进制的数字(num)转化成10进制,num = parseInt(num,16)。 如果再想把它转化成二进制的,就是如下:num.toString(2) 。 这其中关于16进制的一个函数也很特别,escape函数可以将一个字符串转化成16进制的数字。 下面是一个综合的例子:var a = esca...
在Javascript中,一切都是对象,字符串是对象,数组是对象,变量是对象,函数也是对象,所以才会允许['a','b','c'].push('d');这样的操作存在。类本身也是一个对象,也可以定义属性和方法: 代码如下: function Test(){}; Test.str = str; Test.fun = function(){return fun;}; var r1 = Test.str; // str var r2 = Test.fun(); // fun var inst = new Test(); var r3 = inst.str; // undefined var r4 = inst.fun(); // undefine...
有人问到一个js问题: 代码如下: var i = 0.07; var r = i*100; alert(r); 结果为什么是7.0000000000000001? 查了下资料,其实我们知道JavsScript中,变量在存储时并不区分number和float类型,而是统一按float存储。而javascript使用IEEE 754-2008 标准定义的64bit浮点格式存储number,按照IEEE 754的定义: http://en.wikipedia.org/wiki/IEEE_754-2008 decimal64对应的整形部分长度为10,小数部分长度为16,所以默认的计算结果为...
官方解释 “闭包”是一个拥有许多变量和绑定了这些变量的环境表达式(通常是一个函数),因而这些变量也是环境表达式的一部分。 通俗解释 Javascript中所有的函数都是一个闭包。不过一般来说,嵌套的function产生的闭包更为强大,也是大部分时候我们所说的“闭包”。看如下代码: 代码如下: //外层函数a function a(){ //临时变量i var i = 0; //内层函数b function b(){ //引用外层临时变量i alert(++i); } //执行结果,返回内层...