Комментарии 18
Я правильно понял что отличие между populate и populate-inner в том что в первом случае элемент расклонируется внутри родительской ноды, а во втором будут склонированы потомки элемента?
Насколько понимаю, это для IE 9 и выше. Более того возможны проблемы с индексацией.
Вычищать шаблон от лишних классов всё равно придётся. Тут лучше бы иметь чисто внешний инструмент, работающий над шаблоном и могущий не только размножать внутренности, а генерировать случайный контент. Описать такой генератор удобно в JSON (не очень) или списком «jQuery-запрос — операция над контентом».
К примеру, у вас
а
К примеру, у вас
generate('...путь LI', {repeat: 7}); // повторит указанный блок 7 раз
а
generate('...путь LI', [{repeat: 7}, {random:'"thumb","thumb,flower,cat"'}]);
//рандомизирует thumb.jpg на thumb.jpg, flower.jpg и cat.jpg.
Вам бы понравилось, если бы кроме CSS-сахара было бы еще JS API решающее вашу задачу? Если да, то feature request принят :) Ждите и воздастся!
А как чисто внешний инструмент узнает, какие блоки и сколько раз нужно скопировать? Это ему ещё как-то отдельно указать нжно будет.
А тут я так понимаю вся фишка в том, что верстаешь шаблон как обычно, а в браузере видишь склонированные элементы, никаких лишних телодвижений не нужно.
Спасибо автору, при первой же вёрстке попробую этот инструмент.
А тут я так понимаю вся фишка в том, что верстаешь шаблон как обычно, а в браузере видишь склонированные элементы, никаких лишних телодвижений не нужно.
Спасибо автору, при первой же вёрстке попробую этот инструмент.
Так я же всё показал в примере:
Vlad911: про CSS-сахар не понял, где он? Вы добавляете скрипт и классы. Классы — это лишнее в тексте. Я предлагаю выбирать элементы внешними селекторами (первый аргумент в generate() ). Тогда обходимся только скриптом с его API и списком команд для генерации. Даже контентом < div class=«title populate-inner-3»>Lorem ipsum dolor...< /div> не засоряем шаблон.
generate('...путь LI', {repeat: 7}); // повторит указанный блок 7 раз
путь указывает, какой элемент DOM выбрать и что с ним делать — клонировать, рандомизировать и т.п.. Внешний — в смысле написанный снаружи HTML, которого он обрабатывает.Vlad911: про CSS-сахар не понял, где он? Вы добавляете скрипт и классы. Классы — это лишнее в тексте. Я предлагаю выбирать элементы внешними селекторами (первый аргумент в generate() ). Тогда обходимся только скриптом с его API и списком команд для генерации. Даже контентом < div class=«title populate-inner-3»>Lorem ipsum dolor...< /div> не засоряем шаблон.
Мне кажется лучше было-бы сделать мини-шаблонизатор и утилиту очистки от этих шаблонов:
Например как-то так
{$5}
<li>{$2}...{$}</li>
{$}
Например как-то так
Подобное уже есть =) называется assemble. Генерит статические страницы используя в основе handlebars.js. Мы на работе потихоньку внедряем – удобно!
Так и задумано, что в опросе все варианты можно выбрать одновременно? По теме — определенно быстрее, однако разное поведение клонируемого блока все равно надо моделировать через копирование. Я имею ввиду тестирование верстки на неадекватные данные.
P.S.: ну и чистить все равно придется в нескольких местах…
P.S.: ну и чистить все равно придется в нескольких местах…
Интересная идея. Её можно было-бы развить — сразу евалить django-like шаблоны, заполняя фейковыми данными. Это бы избавило от лишнего шага в разработке — верстки, позволив сверстанный темплейт сразу подключать на настоящие данные. Помимо этого, каждый раз можно было-бы видеть живые данные, вместо статического lorem ipsum.
Я как-то начал, но не закончил.
Я как-то начал, но не закончил.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
PopulateJS: don't repeat yourself в HTML-разметке