我有2个事件处理程序:
Y.all(".ptl").on("mouseover", handleOverlay);
Y.all(".ptl").on("mouseout", handleOverlay);
而且我想在鼠标移开时向
handleOverlay
传递一个修饰符,以便该函数知道用户已退出节点并退出handleOverlay
函数。我试图遵循API http://developer.yahoo.com/yui/3/api/YUI.html#method_on,对我来说,它应该是:
Y.all(".ptl").on("mouseout", handleOverlay, null, null, null, {arg: "myarg});
但是,在
handleOverlay
中,假设第一个参数是节点,第二个参数在on方法之前是未定义的,然后在不包含传递给它的对象的情况下为null。function handleOverlay(node, te) {}
node =有问题的节点对象(符合预期)
te =在鼠标悬停之前未定义,在鼠标悬停之后为null。
我确定我缺少一些简单的东西,谢谢。
最佳答案
function mousedOver(e, arg1, arg2, arg3) {
//blah blah blah arg1 arg2 arg3
}
Y.all("#target").on("mouseover", mousedOver, null, "foo", "bar", "baz");
您可以将任何所需的内容作为这些自定义参数传递。对象,字符串,函数引用……疯了!