Метод Array.prototype, вызывающий все методы-прототипы - PullRequest
0 голосов
/ 21 мая 2011

Я использую jQuery hover для вызова этого метода, когда кто-то наводит курсор на один из набора элементов

jQuery.fn.setToolTipPositionAndContent = function() {
var shift = rota.shifts.find_by_id($(this).data('id'));
$('#tooltip').css({ top: $(this).offset().top + "px", left: $(this).offset().left + 20 + "px"});
$('#tooltip div.content').html("<div class='ui-icon ui-icon-triangle-1-w'></div>" + shift.user().userName + ": " + formatTime(shift.start) + " - " + formatTime(shift.end));
$('#tooltip div.ui-icon').show();
}

Это метод-прототип (find_by_id), который использует:

Array.prototype.find_by_id = function(id) { // originally made to find shift in shifts array by id
for (var i=0; i < this.length; i++) {
    if (this[i].id == id) {
        var found = this[i];
    }
}
return found;
}

По какой-то причине где-то вдоль линии что-то идет не так, и все методы Array.prototype вызываются в порядке их появления в исходном коде.Это серьезно испортило мое приложение!

Есть идеи, что не так?Я из них!

Вот цветной источник: http://pastie.org/1947729

...