Ответы пользователя по тегу JavaScript
  • Как сделать вывод div внутри другого div?

    lazalu68
    @lazalu68
    Salmon
    Кстати если я правильно понял данный кусок php, у вас этот js выполняется столько раз, сколько у вас элементов в массиве $humans. Это же не дело, надо js вынести, если не в отдельный .js, то хотя бы из foreach. И зачем вам вообще нужен элемент lastdiv? Мне кажется его можно смело исключить. Получится как-то так:

    <div class="teams_block">
    <script type="text/javascript">
    $(document).ready(function(){
    	var team_elements = $('.team_element'), 
    		round_blocks = $('.round_block');
    
    	$('.team_element').on('click', function(){
    		var self = $(this), 
    			team_description = $('<div class="team_description"><center><img src="/img/spinner_32.gif"></center></div>');
    		self.find('.team_description').remove();
    		self.append(team_description);
    		team_description.load('/command/humandescription?id='+self.data('id'), function(){
    			$(this).css('display','block');
    		});
    		team_elements.removeClass('active');
    		round_blocks.removeClass('active');
    		self.addClass('active');
    		self.find('.round_block').addClass('active');
    	});
    });
    </script>
    <?php foreach ($humans as $human){ ?>
    <div class="team_element" data-id='<?= $human->id ?>'>
    	<div class="round_block">
    		<img src="/images/<?= $human->image ?>" />
    	</div>
    	<div class="title"><?= $human->name ?></div>
    	<div class="desc"><?= $human->office ?></div>
    	<img class="team_arrow" width="61" height="24" src="/img/team_arrow.png" />
    </div>
    <?php } ?>
    </div>
    Ответ написан
  • Как правильно сравнить даты?

    lazalu68
    @lazalu68
    Salmon
    Для начала у вас какая-то не очень понятная для меня рекурсия в первом же предложении вопроса: "Приходит json в котором помимо прочего есть дата выступления участников. Нужно сравнить эту дату с датой в json". Какую с какой ?)

    Потом я содержимое объектов не понял: что такое date и что такое dataRel и одна ли это и та же дата?

    Но в целом это не важно, дальше все будет просто.

    Каюсь, лень изобретать готовое решение, но если вас устроит наметка, то она такая:

    Даты можно переводить в timestamp, как-то сходу у меня это получается не очень корректно (при переводе спарсенной строки обратно в дату, время отстает на час), но чую проблема в привязке в GMT, это решаемо. А уже таймстемпы сравниваются как обычные числа, не вижу далее никаких сложностей.

    Например, так:

    a = new Date(Date.parse('Wednesday, November 04, 2015' + ' 13:30'))
    b = new Date(Date.parse('Wednesday, November 04, 2015' + ' 11:30'))
    
    if (a > b) {
        // что-нибудь натворим тут
    }


    А раз вы говорите, что можете корректировать json, то пихните туда еще собственно timestamp, тогда вообще алгоритм будет прозрачный.

    Если вам никто не ответит до завтра, то с утра натворю полноценное решение на основе имеющейся информации.
    Ответ написан
    5 комментариев
  • Почему некоторые люди просят JS без JQuery???

    lazalu68
    @lazalu68
    Salmon
    Скорее всего это из-за политики совместимости: $ весь из себя крутой еще потому, что он заботится об этом. Из-за этого (и не только) получается так, что $ затыкает всех не скоростью, а гибкостью и функциональностью.

    Вполне возможно, что ваши "некоторые люди" в курсе о том, что в некоторых случаях время выполнения tree traversal запросов на $ может достигать 0.3 секунды, и хотят этого избежать. Например, заставив вас писать js исключительно для ff )
    Ответ написан
    Комментировать