javascript - 如何将 'this' 范围转发到 javascript 中的函数调用

标签 javascript scope this

我如何转发引用调用事件监听器的元素的 this 范围?

例子:

<input type=button value="Foo" id=mybutton>

addEvent('mybutton','touchstart', function(){
    if(window['touchmoved']==false)
    hover(); 
});


function hover(){
    this.value //undefined
}

最佳答案

使用 JavaScript Function.callFunction.apply方法:

addEvent('mybutton','touchstart', function(){
    if(window['touchmoved']==false)
        hover.call(this); // `this` of the called hover points to this `this`
});

关于javascript - 如何将 'this' 范围转发到 javascript 中的函数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8555372/

相关文章:

Java 继承 - this 关键字

javascript - Alfresco - 在网页脚本中获取许可证详细信息

php - onclick 禁用提交按钮

javascript - 有关正则表达式中的单引号和双引号的问题吗?

javascript - 当 HTMLElement.onclick 事件调用时,在其函数中获取对象的属性 - javascript

JavaScript : The global variables value cannot be changed

javascript - NodeJS中的 'global'对象是什么

javascript - socket.io,如何从函数中获取事件名称?

Python:为什么描述符不能是实例变量?

java - 处理声音,库未正确安装