Event.observe函数 - 按类而不是id观察元素

ser*_*nni 7 javascript class event-handling prototypejs

有原型js功能:

Event.observe(element,eventName,handler)

这里元素表示元素的ID.

是否有可能把这里元素的

我从第三方获得了带有class属性的元素.

Roa*_*rth 22

$$可以通过css选择器检索元素,包括通过句点符号 按类检索.:

$$('.myClass'); // array with all elements that have class "myClass"
Run Code Online (Sandbox Code Playgroud)

要回答你的问题,Event.observe是"静态"版本observe(用于所有意图和目的).为方便原型自动地使.observe可用的关闭的所有DOM元素(提取与任一$$$):

例子:

// get one item by id with $ and attach an event listener:
$('myId').observe(eventName, handler);

// get many items by class with $$ and attach an event listener:
$$('.myClass').each(function(element) {
  element.observe(eventName, handler);
});

// or shorter:
$$('.myClass').invoke('observe', eventName, handler);
Run Code Online (Sandbox Code Playgroud)