избегайте повторения одного и того же кода для каждого элемента с jquery - PullRequest
0 голосов
/ 13 марта 2011

У меня есть следующий встроенный javascript, я использую плагин обратного отсчета jquery для отображения оставшегося времени.

этот код существует с каждым «Комментарием» на странице, следовательно, он повторяется несколько раз на странице. Как я могу сделать это внешним? и избежать повторения?

я использую .nt mvc бритву и прикрепляю id.

<script type="text/javascript">
    $(function () {
    var dateLeft = new Date(@(item.UnixTicks));
    $('#countdown-@(item.ID)').countdown({until: dateLeft, format:'MS', onExpiry: liftOff, onTick: watchCountdown}); 

    function liftOff() { 
        alert('We have lift off!'); 
    } 

    function watchCountdown(periods) { 
        $('#monitor-@(item.ID)').text('Just ' + periods[5] + ' minutes and ' + 
            periods[6] + ' seconds to go'); 
    }
    });
</script> 

1 Ответ

2 голосов
/ 13 марта 2011

Вы можете поместить UnixTicks в атрибут в комментарии, присвоить всем комментариям class="comment" и зациклить их:

$('.Comment').each(function() { 
    var dateLeft = new Date(parseInt($(this).attr('data-unixticks'), 10));
    ...
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...