从jQuery转换函数(“#page> ul> li:last> a”)。click()到Prototype

时间:2011-09-18 18:33:31

标签: jquery prototypejs

我有一个使用jQuery的声明如下:

jQuery("#page>ul>li:last>a").click();

我怎么能在Prototype中做到这一点?

2 个答案:

答案 0 :(得分:3)

原型中的选择器与jQuery中的相同。区别在于您必须在原型中使用$$函数,然后迭代每个选定的元素:

$$("#page > ul > li:last > a").each(function(element) {
    eventFire(element, "click");
});

看起来原型没有像jQuery的trigger这样的方法。您可以编写类似this answer中的函数:

function eventFire(el, etype){
  if (el.fireEvent) {
    (el.fireEvent('on' + etype));
  } else {
    var evObj = document.createEvent('Events');
    evObj.initEvent(etype, true, false);
    el.dispatchEvent(evObj);
  }
}

答案 1 :(得分:1)

$$('#page>ul>li:last>a')[0].on('click',function(event){

 });