如何从JQuery中调用这个函数

How do I call this function from within JQuery?

本文关键字:函数 调用 JQuery      更新时间:2023-09-26

我想在Javascript程序中使用JQuery,我正在工作,但我遇到了一些问题的范围。在这个伪代码中,我如何从myfunction1调用myfunction2 ?(假设在某处创建了一个新的MyConstructor对象,并且调用了myfunction1())

function MyConstructor(){...}
MyConstructor.prototype.myfunction1 = function(param) {
   $('#some_element').click(function(){
    this.myfunction2('clicked!'); //this doesn't work
  });
}
MyConstructor.prototype.myfunction2 = function(param) {
}

myfunction2MyConstructor的任意函数中均可与this.myfunction2()调用。

在您的情况下,您正试图在另一个对this具有不同含义的函数中调用myfunction2。要访问myfunction2,可以为thisthis.myfunction2创建一个扩展到click

函数参数的闭包范围内的变量。
var self = this; 
$('#some_element').click(function(){
   self.myfunction2('clicked!');
});

var myfunction2 = this.myfunction2; 
$('#some_element').click(function(){
   myfunction2('clicked!');
});