Задать вопрос
  • Как сделать выезжающее меню на сайте?

    eucalipt
    @eucalipt
    Самоделкин.
    Для блока слева создай отдельный элемент на странице. Например, div с id "menu". В него помещай все, что тебе нужно. Умеешь подключать JQuery? На всякий случай, объясню.

    <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script> <!-- JQUERY -->


    Вот эту строчку впихни в head своей страницы. Теперь у нас подключен JQuery.
    Что мы делаем дальше? Дальше нам надо отловить клик по нашему "бутерброду" и после клика, собственно, и выдвинуть менюху. Как это делается:

    $(document).ready(function() {
      $("#menu").click(function() {
        $(this).addClass("show");
      });
    });


    Этот код просто выдели в отдельный .js файл (ну и подключи его как простой .js скрипт, разумеется. Только он должен быть подключен после того, как подключишь JQuery).

    Короче, что мы сделали: мы отловили клик по этому элементу и повесили на него функцию, которая к нашему div'у добавит класс "show". Дальше уже чистый css.

    #menu {
    /* тут твои стили */
    left: -350px;
    }
    
    #menu.show {
    /* тут твои стили */
    left: 0px;
    }


    Я думаю, суть ясна. Когда у менюхи появляется класс "show", то тогда мы просто "выдвигаем" ее из-за левого края страницы. По желанию можно сделать это плавным:

    #menu {
    /* тут твои стили */
    transition: left ease 0.2s;
    left: -350px;
    }
    
    #menu.show {
    /* тут твои стили */
    left: 0px;
    }


    Кстати, этот код написан под менюху, шириной в 350px.

    Теперь ее надо закрыть. Тут 2 способа. Хотя нет, 3.
    Можно отловить в нашем скрипте уход мышки с элемента и просто убрать класс "show" (mouseleave, removeClass()). А можно отловить клик по НЕэлементу див. Это тоже в JQ.
    А можно еще расставить флаги, и контролировать, когда меню открыта, при нажатии на бутерброд, делать одно, и когда закрыта - другое.
    Ответ написан
    4 комментария
  • Попап окно с привязанными элементами в 1С Битрикс?

    babarun
    @babarun Куратор тега 1С-Битрикс
    Безумный план моих идей в руках больных людей
    После ссылки делаете скрытый div, в нём выводите все проекты, если проектов нет, тогда div не делаете. На ссылку вешаете событие onclick. В обработчике события проверяете если после этой ссылки есть div, тогда с помощью fancybox делаете всплывающие окошко с содержимом этого дива, если div'а нет, тогда location.href= <?=Ссылка?>
    Ответ написан
    2 комментария
  • Как автоматически генерировать ссылку на элемент в 1С Битрикс?

    В joxi.ru/p27gBPNuL5on27 я бы поменял тип свойства на привязку к элементу, потом в result_modifier.php шаблона, по ID из этого свойства получал бы DETAIL_PAGE_URL привязанного элемента, значение будет в нужном виде
    Ответ написан
    Комментировать
  • Как автоматически генерировать ссылку на элемент в 1С Битрикс?

    MintTea
    @MintTea
    1) В настройках инфоблока задать настройки url. Примерно так: Rmze1GJTvwD8rO.png

    2) В php сменить всю эту дурь с дополнительным свойством на вывод переменной $arItem['DETAIL_PAGE_URL']
    Ответ написан
    2 комментария
  • Как дебажить javascript?

    ymatuhin
    @ymatuhin
    Front end разработчик
    Могу посоветовать очень хорошее видео, с FrontTalk –vimeo.com/107580454
    Ответ написан
    Комментировать
  • Какие видеокурсы по изучению английского языка посоветуете?

    @Shilovmozge
    Полиглот,книжка Английская грамматика с человеческим лицом и годовая подписка на LinguaLeo.
    Это обобщенно самые частые советы,и самые действующие элементы саморазвития в сфере самостоятельного изучения английского.
    Еще добавлю программу Rosseta Stone,ну она по функционалу считай оффлайн версия LinguaLeo.
    Все вышеперечисленное за исключением LinguaLeo на известных торрент трекерах,храни господь рутрекер и ннм клаб.
    Ответ написан
    7 комментариев
  • Kohana vs Yii vs ...? Какой фреймворк способен максимально эффективно использовать ресурсы сервера?

    viktorvsk
    @viktorvsk
    Перед тем, как оптимизировать, нужно понять, что оптимизировать. Количество образщений в секунду, какие операции с базой выполняются, необходимый процент надежности... У вас же синдром преждевременной оптимизации.

    В 80% случаев все решается индексацией базы, правильным применением движков таблиц, мемкешем\редисом. В этом все популярные фреймворки должны быть на одном уровне. В другом - вы не определитесь, пока не будет четких требований.

    А так, да, всегда хочется взять Node.js. И немножечко jQuery
    Ответ написан
    1 комментарий
  • Нагрузочное тестирование сайта

    @cbx
    Если хочется просто и быстро, то вполне сгодится Apache Benchmark идущий в комплекте с веб-сервером Apache. Как-то так:

    ab -n 1000 -c 10 http://my.site.dot.com/url/path/

    Варьируя число одновременных соединений (-c 10) и общее количество запросов (-n 1000) можно примерно прикинуть когда сайт начнёт загибаться. Тестировать лучше с другой машины. Также стоит учесть, что если контент страницы меняется от запроса к запросу (динамика), то AB посчитает такие ответы сервера как Failed: www.celebrazio.net/tech/unix/apache_bench.html

    Начать тестирование лучше с наиболее часто посещаемых страниц исходя из аналитики сайта, а также ориентируясь на своё понимание его структуры (если сайт самописный, то вы должны прекрасно представлять его слабые в плане производительности разделы).

    Если захочется большего — смотрите более богатые по возможностям Apache JMeter или Tsung (первый графический, второй консольный). Оба умеют кластеризоваться и генерировать нагрузку с нескольких машин (для этого удобно арендовать инстансы в Amazon EC2), имеют встроенный прокси для записи пользовательских сессий и позволяют задать скорость клиентского соединения (актуально для имитации медленных клиентов и оценки влияния того же nginx). UPD: ещё неплох Yandex Tank

    В любом случае, перед тем как измерять производительность сайта, озаботьтесь мониторингом серверов на которых этот сайт крутится. Без этого смысла в бенчмарках очень мало — они дадут вам какие-то цифры, но дальнейшего плана действий у вас не будет. Как минимум — запустите на машинах утилиту top и смотрите загрузку CPU, потребление памяти и дисковую активность. Также после тестирования просматривайте логи на предмет появившихся ошибок (нехватку сокетов, памяти, ошибки веб-сервера или БД). Полезно включить логгирование медленных запросов в MySQL.

    Дальше — устраняйте выявленные узкие места и повторяйте процесс заново, до тех пор пока не выйдете на приемлемый уровень производительности.
    Ответ написан
    Комментировать