Есть вопрос. Помогите.
Добавлено: 02 дек 2013 15:18
Android test
Браузер Chrome
Скрытый текст:
В теории нетalvaar писал(а):Так и должно быть?
вроде поправил. (тремя постами выше мой пост с такой конструкцией)alvaar писал(а):Хорошо было бы, если вложения-картинки были бы либо не видны внизу сообщения
Там фреймворка не надо никакого - лишь в теги img нужно атрибут не src писать, а data-src, значение которого при первой визуализации писать в srcmike писал(а):прикрутить в форум какой-нибудь фреймворк еще килобайт эдак на 100.
ну jquery то все равно надо?Tarsius писал(а):значение которого при первой визуализации писать в src
Не нужен. От JS требуется лишь повесить событие на открытие слайдера, прочитать значение одного атрибута, изменить значение другого атрибута. jquery для этого использовать не целесообразноmike писал(а):jquery то все равно надо?
Триггер на слайдер есть какой-то, вот там одной регуляркой и поменять src на data-src у тегов img перед отображениемmike писал(а):чтоб туда парсеры втыкать
Зачем же так сложно? Триггер нужно повесить в самом конце, после формирования html-кода, и там уже без сохранения просто написать что-то типа:mike писал(а):достать из src содержимое и сформировать другой код картинки. А при убирании спойлера все наоборот.
Код: Выделить всё
$html = preg_replace('/<img(.*?)src="([^"]+)"/m', '<img$1data-src="$2"', $html);
Код: Выделить всё
element.src = element.dataset.src;
триггер должен как-то сообразить, что его потом bb-спойлером окучат.Tarsius писал(а):Триггер нужно повесить в самом конце, после формирования html-кода
не-не - имеелось в виду не захлопывание спойлера, а удаление его при редактировании поста.. Но если прикрутить постобработку, то тогда да, не надо будет.Tarsius писал(а):Обратное действие не требуется
Но вот триггер с самым-самым высоким приоритетом, который вызывается уже непосредственно перед выводом сформированного html-кодаmike писал(а):Но если прикрутить постобработку, то тогда да, не надо будет.
Он уже 100 раз должен быть обсужден на тематических форумах, но не в контексте спойлеров, а в загрузке изображений по мере прокрутки страницы к ним - технически тоже самоеmike писал(а):пока весь концепт выглядит очень проблематично...
Все картинки в посте? А если они не в спойлере, а просто воткнуты кодом [ img ]?Tarsius писал(а):Но вот триггер с самым-самым высоким приоритетом, который вызывается уже непосредственно перед выводом сформированного html-кода
Вот в этом месте, когда весь html готов к отправке клиенту, вот лишь тогда найти все спойлеры - и поменять внутри них все теги img. Для этого достаточно одной регулярки на поиск положений подстрок (начало/конец спойлера), затем внутри них замена (как выше написал), и затем замена подстрок исходя из найденных позиций на новые и отправка этого всего клиентуmike писал(а):Или после формирования уже готовой к выдаче html-ки прям вот все картинки в странице заменить?
Готовые решения пишутся под все случаи жизни, типа пьяного деда мороза в полнолуние на крыше дома с замерзшими пальцами, который захочет вниз головой воспользоваться форумом... Исходя из этого их использовать по возможности не стоитmike писал(а):но сделаны они не такими простыми средствами.
Ну это не совсем хак, а лишь пост-обработка, особенно если есть в системе соответствующие триггеры специально для таких случаевmike писал(а):не-не, извини такие странные хаки через ммм... одно место я не буду применять
в данном случае эта глобальная постобработка и есть хак в рамках концепции форумного движка. Там нет унивесального последнего триггера.Tarsius писал(а):Ну это не совсем хак, а лишь пост-обработка
забей мы меряемся...Андрей221 писал(а):ребят, вы о чем?
А разве нет триггера конкретно на тег spoiler после его разворачивания? Форум-то модульный все-такиmike писал(а):Обработчик темплейтов-скинов -> перед ним обработчик bbкодов -> перед ним обработчик постов до их публикации в html...
на свой заменитьmike писал(а):с описателем bbкода спойлера
нет конечно. Более того в выдаче и понятия spoiler нетTarsius писал(а):А разве нет триггера конкретно на тег spoiler после его разворачивания?
так он и есть свойTarsius писал(а):на свой заменить
Что-то я был лучшего мнения о движке...mike писал(а):нет конечно
ему примерно сто лет ужеTarsius писал(а):Что-то я был лучшего мнения о движке..
Код: Выделить всё
[spoiler]{TEXT}[/spoiler]
Код: Выделить всё
<div style="margin:5px; margin-top:5px">
<div class="smallfont" style="margin-bottom:2px"><b>Скрытый текст</b>: <input type="button" value="Показать"
style="width:65px;font-size:10px;margin:0px;padding:0px;color:#333;background-color:#eee;border:1px solid #669;"
onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = '';
this.innerText = ''; this.value = 'Спрятать'; }
else
{ this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'Показать'; }">
</div>
<div class="alt2" style="margin: 0px; padding: 0px; border: 0px;">
<div style="display: none;margin: 0px; padding: 3px 5px 3px 5px; border: 1px #cccccc solid;background-color:#f0f0f0;">
{TEXT}
</div>
</div>
</div>
В идеале вот как раз изменив {TEXT} на {NO_IMG_TEXT} с последующим анализом можно добиться нужного эффекта, но погуглил исходники - там печально так в код все шаблоны зашиты...mike писал(а):Код: Выделить всё
<div style="display: none;margin: 0px; padding: 3px 5px 3px 5px; border: 1px #cccccc solid;background-color:#f0f0f0;"> {TEXT} </div>
ну так я это и имел в виду, что без фреймворков написать что-то компактное в инлайн код проблематично.Tarsius писал(а):В идеале вот как раз модифицируя {TEXT}
mike писал(а):без фреймворков написать что-то компактное в инлайн код проблематично.
Код: Выделить всё
<input type="button" value="Показать" style="..." onclick="...">
чо? нормальный код.Tarsius писал(а):хотя код - жесть, конечно
скорее всего размер большойKarella писал(а):Не могу вставить фото через "Вложения" в Объявлениях в Семья и дети. Почему?
Я не могу вообще выбрать файл. Не открывается ничего. Размер 400*400, 15,9Кб.mike писал(а):скорее всего размер большойKarella писал(а):Не могу вставить фото через "Вложения" в Объявлениях в Семья и дети. Почему?
Думаю, что какой-то косяк видимо в базе был. Зачистил старые опросники.shinapodolsk писал(а):что я делаю не так?
Спасибоmike писал(а):Думаю, что какой-то косяк видимо в базе был. Зачистил старые опросники.shinapodolsk писал(а):что я делаю не так?
Попробуйте теперь создать - заготовка есть, просто надо отредактировать.