prototype中是构造函数的方法;如果类里面写function的话,就相当于new Function(),创建了不同的Function实例,new出来的不同实例中方法不同,所以只能在构造函数的原型对象中去写,这样新的实例公用的就是同一个方法了,所以property适合定义方法,类中适合定义属性,两个一起吃才是最好的。
2016-12-28
勉强理解下,错了的可以纠正哈,其实就是先定义一个闭包,原因是:由于js中没有块级作用域,这种方式可以防止变量被污染,然后把jQuery对象传进去;以便闭包内function函数去接收$,然后闭包内再定义一个名为Carousel的函数,其实就是构造函数,由于构造函数的弊端:方法不能共用,所以在Carousel函数的原型property对象上定义方法,这样方法就可以公用了,这种原型构造函数模式就完成了,相当于其他语言的类,最后将这个函数绑定到window对象上就可以全局调用了,就相当于window.alert;用到的时候可以去new这个类,看不懂的同学可以了解下设计模式,看相关的js书籍。
2016-12-28
花了一天的时间写的,有些地方自己改了改,效果展示:
http://chanshiyu.com/project/carousel/index.html
http://chanshiyu.com/project/carousel/index.html
2016-12-28