Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
Aliance

Илья Лесных

  • 119
    вклад
  • 9
    вопросов
  • 194
    ответа
  • 34%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Где оптимальнее хранить токены при подходе OAuth 2?

    Aliance
    Илья Лесных @Aliance
    Что мешает хранить в таблице со связью one-to-many?
    Ответ написан более двух лет назад
    1 комментарий
    1 комментарий
  • В IE 8 не могу при onsubmit (JS) изменить значение поля перед отправкой. В чем проблема?

    Aliance
    Илья Лесных @Aliance
    Есть подозрение, что проблема в том, что ИЕ отправляет данные до того, как вызываются всякие методы, их изменяющие. Возможно, нужно явным образом прерывать дефолтное поведение события, выполнить изменения данных, и вручную воспроизвести событие. Схема примерно такая (псевдо js):
    function callback (e) {
       e.preventDefault();
       // ...
       // действия с данными формы, удаление пробелов и прочего
       // ...
       form.submit();
    }
    Ответ написан более трёх лет назад
    12 комментариев
    12 комментариев
  • Как сделать анимацию и зациклить её?

    Aliance
    Илья Лесных @Aliance
    Вариант без привязки к классу или количеству элементов: jsfiddle.net/Aliance/zw8t3L2g
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Как избавиться от белого экрана вызванного PHP обработчиком?

    Aliance
    Илья Лесных @Aliance
    Странно, что у тс переменая $headers называется не $zagolovki
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Как передать ID и Имя в input'ы в автодополнении jquery.autocomplete.js?

    Aliance
    Илья Лесных @Aliance
    Например, заглянуть в документацию. Нужные вам методы - focus/select.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как сделать что-бы один ответ сервера в блоке DIV не затирался следующим?

    Aliance
    Илья Лесных @Aliance
    // вот это
    //$("#echoAjax").html(...);
    // заменить на это
    $("#echoAjax").append(...);
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Как найти все комбинации символов?

    Aliance
    Илья Лесных @Aliance
    Реализация примерно похожего алгоритма на PHP: Как лучше сделать код для перевода?
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как поставить картинку вместо текста у radio элемента в ZF2?

    Aliance
    Илья Лесных @Aliance
    Ну а что мешает написать там html? Или он экранируется?
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Как сделать обновление страницы после действия на другой странице?

    Aliance
    Илья Лесных @Aliance
    Вариант, предложенный @RubaXa, довольно просто реализовать, но он может создавать лишнюю нагрузку. Если на это плевать и нужно быстрое и легкое решение - тогда выбирайте его. Если нужно правильное - тогда веб сокеты.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Как проверить несколько переменных JS?

    Aliance
    Илья Лесных @Aliance
    var size1 = data.item[1].name || 'defaultValue';
    var size2 = data.item[2].name || 'defaultValue';
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Зачем писать URL parser ?

    Aliance
    Илья Лесных @Aliance
    В вашем примере - read-only, а библиотеке по ссылке - можно изменять данные.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Как работает присвоение переменно объекта в php?

    Aliance
    Илья Лесных @Aliance
    Почитайте про zval и call-by-reference в PHP (основы подсчета ссылок).

    После присвоения нового значения свойству изначального объекта, в переменную $assigned помещается копия объекта, хранящегося в $instance до этого присвоения (передача по значению). Отсюда эти переменные ссылаются на 2 разных экземпляра класса. А переменная же $reference - является лишь ссылкой на $instance (передача по ссылке), поэтому если оригинал затереть - ссылка тоже затрется.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как скрыть или показать блок в зависимости от состояний чекбоксов?

    Aliance
    Илья Лесных @Aliance
    Лучше будет сделать некий Listener, который подпишется на изменения состояния кнопок. А после публикации изменения - будет отображать или скрывать блок Это более универсально и разделяет котлеты от мух.

    Вот пример реализации через jQuery Callbacks
    // реализация паттерна Обозреватель (Observer)
    var topics = {};
    
    function observer(id) {
        var topic = id && topics[id];
    
        if (! topic) {
            var callbacks = $.Callbacks('memory');
            topic = {
                publish     : callbacks.fire,
                subscribe   : callbacks.add,
                unsubscribe : callbacks.remove
            };
            if (id) {
                topics[id] = topic;
            }
        }
    
        return topic;
    };
    // подписываемся на некую функцию
    observer('checkboxes').subscribe(handleCheckboxesState);
    // биндим всем чекбоксам при изменении их состояния вызывать у подписчиков функцию обработки
    $(function() {
        $(':checkbox').on('change', function() {
            observer('checkboxes').publish($(this));
        });
    })
    // функция обработки
    function handleCheckboxesState($checkbox) {
        // все чекбоксы - $(':checkbox').
        // кликнутый чекбокс - $checkbox
    }


    Демо
    Ответ написан более трёх лет назад
    6 комментариев
    6 комментариев
  • Как в JS отследить выполнение 2х событий?

    Aliance
    Илья Лесных @Aliance
    В голову приходит только говнокод :) сделать глобальную переменную "состояние", в callback`ах этих событий ее инкрементить и вызывать некий метод. А этом методе - выполнять код только если глобальный флаг не меньше двух. Как-то так:
    var globalState = 0;
    function onEvent1() {
        ++globalState;
        myMethod();
    }
    function onEvent2() {
        ++globalState;
        myMethod();
    }
    function myMethod() {
        if (globalState < 2) {
            return;
        }
        // тут главная логика...
    }
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как ежесекундно обновлять данные?

    Aliance
    Илья Лесных @Aliance
    Как все усложняют... Просто пишете timestamp момент, когда событие началось. Далее, зная сколько событие должно идти и время его начала, при загрузке страницы всегда можно узнать сколько осталось времени
    // now - текущий timesamp
    // timesamp - сохраненный timesamp начала отсчета
    // duration - длительность события в секундах
    if (now > timestamp + duration) {
       // событие уже истекло
    } else {
       // осталось (timestamp - now) секунд
    }


    И не нужно никаких кронов. Только нужно учесть, что разница клиентского и серверного таймера будет равняться времени загрузки страницы.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как в дочеренем котроллере вывести переменную из родительского (Kohana)?

    Aliance
    Илья Лесных @Aliance
    А в чем трудности-то?
    abstract class Controller_Common extends Controller_Template {
        protected $_xxx = 'ololo';
    }

    class Controller_Products extends Controller_Common {
        public function __construct() {
            die('унаследованная переменная: ' . $this->_xxx);
        }
    }
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как выбрать из базы данных sql записи с определённым интервалом?

    Aliance
    Илья Лесных @Aliance
    Что мешает написать так:
    SELECT * FROM `...` WHERE `ts` BETWEEN 'lowerTimeStamp' AND 'upperTimeStamp'


    В базе данных имеется табличка, с полем datesend с типом INT.

    Я бы посоветовал сделать alter поля, изменив тип на timestamp.
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
  • Как лучше построить древо из массива на JS/jQuery?

    Aliance
    Илья Лесных @Aliance
    Но есть подозрение что append для каждого элемента древа не есть хорошо.

    так и есть. лучше все собирать в переменную и потом разом ее вставлять.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Можно ли применить onclick="ChangeColor( )", чтобы изменить цвет двух элементов одновременно?

    Aliance
    Илья Лесных @Aliance
    <th id="sto">100</th>
    <td onclick="ChangeColor( this, '#FEEC88' ); ChangeColor( document.getElementById("sto"), '#FEEC88' )">&nbsp;</td>

    без изменения JS. Либо так:
    <th id="sto">100</th>
    <td onclick="ChangeColor( [this, document.getElementById("sto")], '#FEEC88' )">&nbsp;</td>

    но тогда заменяем и JS:
    var last_change = [];
    var last_color = [];
    function ChangeColor( elements, color ){
       if (typeof element !== 'array') {
          elements = [elements];
       }
       for (var i = elements.length; --i;) {
          var element = elements[i];
          if( last_change[element.id] != null ){
              last_change[element.id].style.backgroundColor = last_color[element.id];
          }
          last_change[element.id] = element;
          last_color[element.id] = element.style.backgroundColor;
          element.style.backgroundColor = color;
       }
    }
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Каким хорошим онлайн конструктор регулярных выраженией вы пользуетесь?

    Aliance
    Илья Лесных @Aliance
    посложнее: regexr.com
    попроще: regexpr.ru
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
Оценили как «Нравится»
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • Следующие →
Самые активные сегодня
  • delphinpro
    Сергей delphinpro
    • 6 ответов
    • 0 вопросов
  • rPman
    • 5 ответов
    • 0 вопросов
  • lookreciuspin
    Br0k3n C1rcu1t
    • 4 ответа
    • 0 вопросов
  • Justa Gain
    • 4 ответа
    • 0 вопросов
  • dturkey
    • 3 ответа
    • 1 вопрос
  • Vindicar
    Vindicar
    • 3 ответа
    • 0 вопросов
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации