从jquery发射本机js事件

时间:2012-03-29 14:59:15

标签: javascript jquery

无论如何,我可以使用本机javascript来触发一个名为onmove的事件,该事件仅适用于IE。 如果我这样做,我可以让它工作。

document.getElementById("device-module").fireEvent("onmove");

这个问题是我不想将id传递给自定义jquery原型。我已经知道元素是什么我只需要在该元素上调用javascript本机fireEvent。 这是可能的还是我必须始终通过document.getElementById()获取dom元素,然后才能使用js native fireEvent方法。

  $.fn.custom = function() {  

    return this.each(function() {
          var _this = $(this);
         _this.fireEvent("onmove");

        });

};

3 个答案:

答案 0 :(得分:2)

thiseach()的值是DOM元素本身。你可以这样直接访问它。 无需再次在$()

中换行
return this.each(function() {
    //the value of "this" in here IS the DOM element
    this.fireEvent('onmove');
});

答案 1 :(得分:1)

使用this.fireEvent("onmove");

使用this迭代器时,

each已经指向DOM元素。

答案 2 :(得分:0)

为什么要用原生元素创建jQuery对象?

      var _this = $(this);

使用它:

      return this.each(function() {
          this.fireEvent("onmove");
      });