原型中相邻功能的问题

时间:2010-04-04 14:43:57

标签: javascript prototypejs scriptaculous

    输入rz值

我的头脑中有:

Event.observe(window, 'load', function() {

$$("input").each(function(field){
  Event.observe(field, "focus", function(input) {
    input.adjacent('p.msg').show();
  });
  Event.observe(field, "blur", function(input) {
    input.adjacent('p.msg').hide();
  });
});

});

这个想法是当输入获得焦点时,p元素出现并且在模糊时它会消失。问题是两者都没有工作,错误控制台显示“input.adjacent不是函数”

我正在使用原型1.6.1和scriptaculous 1.8.3

2 个答案:

答案 0 :(得分:1)

el.pescado说的是真的。

如果你想获取触发事件的元素旁边的项目,也许你应该使用.next()或.previous()而不是.adjacent()。

答案 1 :(得分:0)

传递给事件处理程序的参数(即传递给Event.observe函数的函数)是事件对象,而不是目标元素。绑定事件处理程序的元素作为“this”指针传递,因此您应该使用:

this.adjacent('p.msg').hide();