比如this.ele.addEventListener('touchstart', this.selectmouse.bind(this))
定义在Dumplings.prototype里的函数如果作为Dumplings实例的方法调用,其this指针会指向Dumpling实例。
但作为参数传递给其他函数(比如addEventListener)时其this指针会被重置,由addEventListener控制。
你需要在prototype里的函数里调用其它同级的函数,this就应当指向Dumplings实例,用this.ele来绑定事件和访问事件的对象,这样才能通过this来访问其他同级对象。为防止addEventListener改变this的指向,需要用bind固定下来。
调用的时候传递参数就可以了如:
<script>
var oo = new Object ()
oo.name = abc
function abc(id){
alert(id)
}
oo.name(2)
</script>
这个就涉及到闭包了,一种你可以在外部定义一个对象,在函数内部把要调用的那个function赋值给这个对象上面,在外面就可以通过这个对象来调用了,一种通过构造函数,这个构造函数就是外部的那个function,把里面的function赋给这个创建的对象,通过外部构造函数创建的对象也可以调用里面的函数