Dojo.Connect事件没有被调用 - 为什么?

Cob*_*ast 4 javascript events dojo dom

我试图将onMouseDown事件连接到图像,dojo.connect如:

dojo.connect(dojo.byId("workpic"), "onMouseDown", workpicDown);

function workpicDown()
{
    alert("mousedown");
}
Run Code Online (Sandbox Code Playgroud)

类似的代码几行之后,我正在连接onMouse*事件以dojo.body完全正常工作.

但是当我点击图像时,我没有看到警报窗口,因此事件不会被调用.这是为什么?

Ric*_*tte 7

当与DOM事件一起使用时,"onMouseDown"应该全部为小写,而不是Widget事件.尝试:

dojo.connect(dojo.byId("workpic"), "onmousedown", workpicDown);
Run Code Online (Sandbox Code Playgroud)

文档:

关于事件名称的注释:事件名称现在是小写,除非在特殊情况下(例如,一些Mozilla DOM事件).如果你把它关掉,Dojo会在你的事件名称上添加"on"(例如,'click'和'onclick'与dojo相同).这与Widget事件的区别在于Dijit使用mixedCase事件名称,以避免潜在的冲突.