Event.observe只适用于文档而不是特定的id?

时间:2012-05-03 14:49:24

标签: javascript prototypejs

我有一个页面,我正在学习原型js并有时间使用Event.observe。如果我点击文档的任何地方,我的问题就是这样:

Event.observe(document, 'click', respondToClick);

function respondToClick() {
  alert("Test...");
}

但我想为不同的id制作几个Event.observe函数,所以我这样做了:

Event.observe('foo', 'click', respondToClick);

function respondToClick() {
  alert("Test...");
}

现在foo只是一行,如下所示:

<tr id="foo">
                <th>Row Title</th>

                <th>Open/Close</th>
            </tr>

但是当我点击该行时,它不会触发警告框。我尝试过太多东西,现在正在寻求帮助。任何想法为什么特定元素不会产生警报?

2 个答案:

答案 0 :(得分:0)

EIther你可以尝试这个

Event.observe($('foo'), 'click', respondToClick); 

 $("foo").observe('click', respondToClick);

参考:http://api.prototypejs.org/dom/Event/observe/

在行动中看到它

http://plugins.amiwithyou.com/sof/event.htm

答案 1 :(得分:0)

取决于执行顺序。

Event.observe('foo', 'click', respondToClick);

仅在

时有效
<tr id="foo">...

已存在于HTML DOM