<rmcreative>

RSS

Все заметки с тегами «jQuery, JavaScript»

Можно уточнить:

  1. Супрепростые шаблоны на jQuery без дополнительных библиотек

    2 ноября 2016

    Шаблоны — это удобно. Особенно когда альтернатива — формировать HTML конкатенацией. Если в проекте есть jQuery, а отдельный шаблонизатор использовать не хочется, реализовать простые шаблоны очень просто.

    Для начала задаём сам шаблон прямо в HTML страницы:

    <script type="html/tpl" id="my-template">
    <div class="item">
        <h1>{title}</h1>
        <p class="description">{description}</p>
    </div>
    </script>

    Далее реализовываем сам метод получения строки с заменёнными плейсхолдерами:

    function renderTemplate(name, data) {
        var template = document.getElementById(name).innerHTML;
     
        for (var property in data) {
            if (data.hasOwnProperty(property)) {
                var search = new RegExp('{' + property + '}', 'g');
                template = template.replace(search, data[property]);
            }
        }
        return template;
    }

    Использовать можно так:

    var html = renderTemplate('my-template', {
        title: "My cool thing",
        description: "It is really cool, isn't it?"
    });

    Стоит отметить, что экранирование спецсимволов не делается, так что будьте осторожны.

    8 комментариев
  2. jQuery 2.0

    19 апреля 2013

    Релизнулась версия 2.0 самой популярной JavaScript-библиотеки.

    В релизе выкинули поддержку Internet Explorer 6, 7 и 8. За счёт этого выиграли в размере на 12% и прибавили в скорости. Можно выиграть в размере ещё больше, если сделать свой билд, убив ненужные из 12-и встроенных по умолчанию модулей.

    Тем, кому нужны старые IE остаются на ветке 1.x, которая их поддерживает и которую не забросили (скоро выйдет 1.10) и планируют поддерживать ещё несколько лет. API 2.0 хоть и совместим с не-deprecated 1.9, но изменений всё-таки много.

    7 комментариев
  3. jQuery 1.8

    10 августа 2012

    Вышла новая версия JavaScript-библиотеки jQuery.

    Совместима с jQuery UI (1.8.22) и jQuery Mobile (1.1.1).

    Главное изменение — переписан движок селекторов Sizzle, что дало определённый прирост производительности. Также:

    • Закрыто 160+ багов.
    • Меньше размер, чем у предыдущего релиза.
    • Переписано многое, касающееся анимации. Старое всё будет работать. Есть и дополнения (пример).
    • Добавили возможность собирать только нужные части (большинства это не коснётся потому как собирается спецутилитами).
    • Теперь автоматически расставляются CSS-прификсы:
    $('#test').css("user-select", "none");
    // В Chrome/Safari получим "-webkit-user-select"
    // В Firefox — "-moz-user-select"
    // IE10 — "-ms-user-select".
    2 комментария
  4. The Modal

    13 июля 2012

    Оформил «правильные модальные окна» в плагин jQuery и выложил на github.

    API получился, на мой вкус, неплохим. Можно делать, например, вот такие штуки:

    $.modal().open({
        onOpen: function(el, options){
            $.get('http://example.com/', function(data){
                el.html(data);
            });
        }
    });

    На данный момент найдены две нехорошести — одна со скроллом кнопками в FF, вторая — со скроллом на iPad. Со временем, конечно же, они будут исправлены.

    Пользуемся и форкаем

    24 комментария
  5. Chosen, функциональные и красивые селекты

    28 июля 2011

    Элементы select доставляют достаточно много проблем: начиная с того, что пользоваться ими не очень удобно при большом количестве вариантов и заканчивая тем, что применить к ним стили в старых версиях IE — совершенно неблагодарное занятие.

    Плагин Chosen превращает select-ы в довольно приятные штуки. При этом не нужна ни дополнительная разметка, ни какие-либо значительные телодвижения.

    Пользуемся

    7 комментариев
  6. jQuery 1.6

    4 мая 2011

    Вышла свежая версия jQuery.

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

    В данном релизе есть несовместимые с предыдущим изменения. Будьте осторожны.

    6 комментариев
  7. jQuery 1.5

    1 февраля 2011

    Вышла новая стабильная версия jQuery.

    • 83 исправления, 460 закрытых тикетов.
    • Проверено 4437 тестами в Safari, Opera, IE, Firefox и Chrome.
    • jQuery.ajax теперь возвращает объект jXHR, благодаря чему стало возможным, например, остановить запрос JSONP.
    • Отложенные объекты:
    var jxhr = $.ajax({ url: "example.php" })
        .success(function() { alert("success"); })
        .error(function() { alert("error"); })
        .complete(function() { alert("complete"); });
    6 комментариев
  8. jQuery router

    12 ноября 2010

    Маршрутизация URL очень актуальна не только на стороне сервера, но и, в последнее время, на стороне клиента. И, если её сделать правильно, пользоваться очень удобно.

    Существует несколько решений данной проблемы, в том числе и популярный jQuery BBQ. У всех этих решений есть минус — все они достаточно низкоуровневые.

    Вчера Василий Михайловский из студии D1.ru показал свой вариант роутера. Отличается от остальных он следующим:

    • Высокоуровневый API.
    • Динамический роутинг на регулярных выражениях.
    • Код покрыт тестами.

    Если вы собираетесь делать проект с асинхронной навигацией — стоит присмотреться.

    10 комментариев
  9. jQuery 1.4.3

    16 октября 2010

    Выпущен финал jQuery 1.4.3. Размер, по сравнению с предыдущей версией, немного увеличился. Но не просто так.

    Перечислю тут самые значимые (по крайней мере для меня) изменения.

    • Стало возможно писать свои расширения CSS. Например, rotate.
    • Разделили .style() и .css(), что позволило ускорить работу .css().
    • metadata помещён в ядро, теперь можно обращаться к HTML5-атрибутам без префиксов:
    <div data-role="page" data-hidden="true" data-options='{"name":"John"}'></div>
    $("div").data("role") === "page";
    $("div").data("hidden") === true;
    $("div").data("options").name === "John";
    • .data при использовании не с DOM-элементами теперь пишет в сам элемент.
    • Серьёзно увеличена скорость .closest(), .filter(), .is() и .find().
    • Можно использовать .bind("click", false) и .unbind("click", false) для реализации обработчиков, которые просто возвращают false.

    • Официальный анонс

    • Обновляемся
    1 комментарий
  10. jQuery Tools 1.2 и flowplayer 3.2

    4 мая 2010

    Обновились два замечательных продукта. Flowplayer — гибкий бесплатный видеоплеер с отличным API, единственным минусом которого, пожалуй, является невозможность работать без flash. В планах поддержка HTML5 уже имеется, но в данном релизе её нет.

    jQuery Tools — функциональный сверхкомпактный набор библиотек для jQuery, включающий в себя табы, подсказки, валидатор форм и другие полезные инструменты.

    2 комментария