jQuery如何在触发自定义函数时检索.trigger()额外参数

时间:2015-04-13 02:29:44

标签: jquery

我已经构建了一个jQuery自定义函数

jQuery.fn.myfunction = function(){ ... }

使用.trigger()

调用此自定义函数
my_element.trigger('change', [ "Custom", "Event" ]);

我正在尝试在自定义函数[ "Custom", "Event" ]中检索数组myfunction,但我无法找到如何执行此操作。

有任何帮助吗?非常感谢

1 个答案:

答案 0 :(得分:2)

第一个参数是事件对象。以下所有参数均为自定义。

jQuery.fn.myfunction = function(e,customParm1,customParm2){ ... }

请参阅.trigger()文档:

$( "#foo" ).on( "custom", function( event, param1, param2 ) {
  alert( param1 + "\n" + param2 );
});
$( "#foo").trigger( "custom", [ "Custom", "Event" ] );

如果您确实需要所有自定义args的数组,那么您可以使用:

var customArgs = Array.prototype.slice.call(arguments); // convert arguments to array
customArgs.shift(); // get rid of event arg
console.log( customArgs ); // outputs [ "Custom", "Event" ]

http://jsfiddle.net/rq3hj03x/