Javascript 当函数已经有一个参数时,如何获取调用者元素的引用
如何获取Javascript 当函数已经有一个参数时,如何获取调用者元素的引用,javascript,parameters,reference,call,Javascript,Parameters,Reference,Call,如何获取myFunction中调用者元素的引用?在您的示例中,您将myFunction(5)的返回值分配给el1.onclick,将myFunction(7)的返回值分配给el2.onclick 以以下为例: function myFunction(par) { ... } el1.onclick=myFunction(5); el2.onclick=myFunction(7); 在上面的示例中,执行myFunction(5)。然后该函数的返回值,我们称之为myval,被分配给el1.on
myFunction
中调用者元素的引用?在您的示例中,您将myFunction(5)
的返回值分配给el1.onclick
,将myFunction(7)
的返回值分配给el2.onclick
以以下为例:
function myFunction(par) {
...
}
el1.onclick=myFunction(5);
el2.onclick=myFunction(7);
在上面的示例中,执行myFunction(5)
。然后该函数的返回值,我们称之为myval,被分配给el1.onclick
。这相当于:
el1.onclick=myFunction(5);
不清楚这是否是你的意图。为了实现这一点,myFunction的返回值需要是稍后执行的函数(或Javascript字符串)
在该函数中,您将引用调用者元素
该函数中的此
将返回当前调用事件的元素。在您的示例中,您将从myFunction(5)
向el1.onclick
分配返回值,从myFunction(7)
向el2.onclick
分配返回值
以以下为例:
function myFunction(par) {
...
}
el1.onclick=myFunction(5);
el2.onclick=myFunction(7);
在上面的示例中,执行myFunction(5)
。然后该函数的返回值,我们称之为myval,被分配给el1.onclick
。这相当于:
el1.onclick=myFunction(5);
不清楚这是否是你的意图。为了实现这一点,myFunction的返回值需要是稍后执行的函数(或Javascript字符串)
在该函数中,您将引用调用者元素
该函数中的此
将返回当前正在调用事件的元素。//这表示调用此函数并将其返回的内容指定给onclick
el1.onclick=myFunction(5)
你想用闭包吗
el1.onclick=function(){myFunction(5);}
若要引用元素,可以传入对象
var myval = myFunction(5);
el1.onclick = myval;
或者您可以使用,以便在侦听器中,此
引用元素
function test(elem, x){
elem.innerHTML = x;
}
document.getElementById("foo").onclick = function(){ test(this, 1); }
//这是说调用此函数并将其返回的内容指定给onclick el1.onclick=myFunction(5) 你想用闭包吗 el1.onclick=function(){myFunction(5);} 若要引用元素,可以传入对象
var myval = myFunction(5);
el1.onclick = myval;
或者您可以使用,以便在侦听器中,此
引用元素
function test(elem, x){
elem.innerHTML = x;
}
document.getElementById("foo").onclick = function(){ test(this, 1); }
仅供参考,您可能询问的是目标元素,而不是调用方。术语调用者是指调用当前正在执行的函数的函数。许多JS引擎都有arguments对象的属性,称为
caller
。仅供参考,您可能询问的是目标元素,而不是调用者。术语调用者是指调用当前正在执行的函数的函数。许多JS引擎都有arguments对象的属性,称为caller
。