我正在研究 jQuery ToolTip 插件(以下简称 Tooltip)的代码,并注意到我不完全理解的行为。
Tooltip 绑定一个 mouseover 函数,如下所示:
.mouseover(save)
以这种方式调用时,this
变量是HtmlDivElement
.
我尝试将其更改mouseover
为:
.mouseover(function(e){save(event)})
因为我正在寻找 MouseEvent。但是,现在this
变量是Window
.
我找到了一种方法来解决这个问题并HtmlDivElement
通过使用这行代码来获得:
.mouseover(function(e){save(this, event)})
并this
用作this
函数内部的替代品。
我的问题是-为什么save
在鼠标悬停绑定内的匿名函数内调用该函数时会失去其范围?