使用 jQuery,我设置链接标记的点击处理程序如下:
$('#lnk').click(handleClick);
handleClick 做这样的事情:
function handleClick() {
var $this = $(this);
...
}
现在我需要在被点击的#lnk 之外直接调用 handleClick()。有没有办法在调用 handleClick 时设置 this
?
最佳答案
handleClick.call(theElementThatShouldBeThis);
当然 theElementThatShouldBeThis
必须是 DOM 元素或接受作为 jQuery()
输入的东西。
如果您正在访问 handleClick
内的 event
元素,它会变得更加棘手。但我只是假设你没有 ;)
您还可以通过调用 $('#lnk').click()
(模拟点击)始终在 #lnk
的上下文中执行事件处理程序.
关于javascript - 调用函数时如何设置jQuery this?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3945281/