-2
如何将对象self
传递给“Click”事件上的函数?目前,它正在通过jQuery.Event
对象,它包含一个data
财产与我的对象,但我希望对象是jPlayer
,不jQuery.Event
通过.On()没有事件属性的jQuery传递对象
我想这是当函数被调用的事件中的代码拿下的原因不工作,因为我将不得不通过jPlayer.data.jPlayer访问数据,如果我这样做,那么我的changeShuffleIcon(self);
将无法正常工作。
ready: function() {
var self = this;
changeShuffleIcon(self);
$(".jp-shuffle").on("click", { jPlayer: self }, changeShuffleIcon);
}
...
function changeShuffleIcon(jPlayer) {
if ($(jPlayer).hasClass("jp-state-shuffled")) {
$(".jp-shuffle").children().addClass("clicked-button");
} else {
$(".jp-shuffle").children().removeClass("clicked-button");
}
}
(砍掉一些代码的简洁。)
[文档清楚地表明您需要通过'event.data'](http://api.jquery.com/on/#on-events-selector-data-handler)访问传入的数据。 – zzzzBov