随笔分类 -  jquery/javascript

学习Javascript闭包(Closure)
摘要:转自:http://www.ruanyifeng.com/blog/2009/08/learning_javascript_closures.html闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。下面就是我的学习笔记,对于Javascript初学者应该是很有用的。一、变量的作用域要理解闭包,首先必须理解Javascript特殊的变量作用域。变量的作用域无非就是两种:全局变量和局部变量。Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。 var n=999; function f1(){ alert(n);... 阅读全文

posted @ 2012-02-21 10:28 E猫 阅读(192) 评论(0) 推荐(0)

Javascript面向对象编程(三):非构造函数的继承
摘要:今天是最后一个部分,介绍不使用构造函数实现"继承"。一、什么是"非构造函数"的继承?比如,现在有一个对象,叫做"中国人"。 var Chinese = { nation:'中国' };还有一个对象,叫做"医生"。 var Doctor ={ career:'医生' }请问怎样才能让"医生"去继承"中国人",也就是说,我怎样才能生成一个"中国医生"的对象?这里要注意,这两个对象都是普通对象,不是构造函数,无法使用构造函数方法实 阅读全文

posted @ 2012-02-07 08:58 E猫 阅读(154) 评论(0) 推荐(0)

Javascript面向对象编程(二):构造函数的继承
摘要:今天要介绍的是,如何生成一个"继承"多个对象的实例。比如,现在有一个"动物"对象的构造函数, function Animal(){ this.species = "动物"; }还有一个"猫"对象的构造函数, function Cat(name,color){ this.name = name; this.color = color; }怎样才能使"猫"继承"动物"呢?1. 构造函数绑定最简单的方法,大概就是使用call或apply方法,将父对象的构造函数绑定在子对象上,也就是 阅读全文

posted @ 2012-02-07 08:45 E猫 阅读(223) 评论(0) 推荐(0)

javascript 面向对象编程(一):封装
摘要:Javascript 面向对象编程(一):封装Javascript是一种基于对象(object-based)的语言,你遇到的所有东西几乎都是对象。但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类)。那么,如果我们要把"属性"(property)和"方法"(method),封装成一个对象,甚至要从原型对象生成一个实例对象,我们应该怎么做呢?1. 生成对象的原始模式假定我们把猫看成一个对象,它有"名字"和"颜色"两个属性。 var Cat = { name : '', 阅读全文

posted @ 2012-02-07 08:36 E猫 阅读(209) 评论(0) 推荐(0)

js 模拟队列类
摘要:/* * 模拟队列 */var Qu ={};//构造函数Qu.Queue = function (len) { this.capacity = len; //队列最大容量 this.list = new Array(); //队列数据};//入队Qu.Queue.prototype.enqueue = function (data) { if (data == null) return; if(this.list.length>=this.capacity) { this.list.remove(0); } this... 阅读全文

posted @ 2011-12-07 16:58 E猫 阅读(371) 评论(0) 推荐(0)

Jquery 操作checkbox
摘要:1,获取radio选中项的值var rate = $("input[name=rdtype]:checked").val();2,判断checkbox是否被选中var chkBind = $("#chkBind").attr('checked');3,checkbox全选,取消$("#chkSelectAll").click(function() { var flag = $(this).attr("checked"); $("[name=chkItem]:checkbox"). 阅读全文

posted @ 2011-08-04 17:19 E猫 阅读(489) 评论(0) 推荐(0)

jQuery动态添加的元素绑定事件处理函数
摘要:有一段时间没用jquery了,今天又碰到这个问题。当时是知道有livejquery可以解决。但是我并不喜欢为了这个而另外加载一个。我当时的处理方法是在添加的时候手工绑定事件处理函数。不过新版的jquery已经添加了这个功能。我们已经不需要为此烦恼了。参考:http://api.jquery.com/live/以前我们定义事件,比如为元素定义单击事件是这样写的:$('input').click(function () {//处理代码});或$('.clickme').bind('click', function() { // Bound handl 阅读全文

posted @ 2011-08-02 11:14 E猫 阅读(328) 评论(0) 推荐(0)

导航