原型 - 按元素类名称单击事件

Dav*_*vid 12 javascript prototypejs dom-events

我是原型框架的新手,我正在尝试一些非常简单和失败的东西.我试图回复按钮上的点击事件,如下所示:

$$('.btn').observe('click', respond);
function respond(event) {
    alert("hello");
}
Run Code Online (Sandbox Code Playgroud)

为什么这不起作用?请帮忙!

Dio*_*ane 22

与jQuery不同,在Prototype中处理具有多个结果的选择器的工作方式略有不同.您需要使用分别处理每个选定的结果.each().

$$('.btn').each(function(element) {
    element.observe('click', respond);
})
Run Code Online (Sandbox Code Playgroud)

这是我转移到jQuery的原因之一.另一个原因是:知道jQuery是可销售的并且知道Prototype不是.


acm*_*cme 13

也可以使用单线程来完成,正如有人在评论中已经建议的那样:

$$('.btn').invoke('observe', 'click', respond);
Run Code Online (Sandbox Code Playgroud)