我对这段代码感到有点困惑,并希望得到一些澄清。上下文只是一个简单的下拉菜单,我只是添加一个高亮类来链接鼠标悬停事件。 util.addEvent只是一个我用于跨浏览器合规性的简单实用程序。 这很有效。
var highlight = function(link){
return function(){
link.className="highlight";
}
}
这不起作用。
util.addEvent(link, "mouseover", function(link){
link.className="highlight";
});
此外:
util.addEvent(link,"mouseover",function(event){
link=event.target;
link.className = "highlight";
});
这也有效。当我在第二个不起作用的函数内部执行console.log(link)时,我实际上得到了鼠标坐标......很困惑。
答案 0 :(得分:0)
这不起作用,因为链接是鼠标悬停时从浏览器调用发送的内容,即事件
util.addEvent(link, "mouseover", function(link){
link.className="highlight";
});
我的猜测是在你的addEvent中,第一个参数是在调用事件时它的上下文应该是什么,所以这可行:
util.addEvent(link, "mouseover", function(event){
this.className="highlight";
});