Подгрузка изображения через lazyload и форму на ajax
Приветствую!
Ищется рабочее решение, чтобы после сохранения контента в форме, которая отправляет контент через ajax, при возвращении подгружались фотки в lazyload? Вот код формы: function submitEditableModelForm(){ var _form = $("#editable_model_form"); if(_form.valid()) $.ajax({ // рони if(_form.valid()) type: "POST", url: _form.attr('action'), data: _form.serialize(), dataType:"json", success: function (res) { if (res.code == 10000) { $('.dialog_close_button').click() $('.editable-page-model[data-id='+res.result.config_id+']').replaceWith(res.result.model_html) addDialogEvent() initSlide() }else{ layer.msg(res.message) } } }); } Код lazyload: $("img.lazyload-scroll").lazyload({ //placeholder : "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8VA8AAmkBc7YFeIIAAAAASUVORK5CYII=", effect: "fadeIn", skip_invisible : false, threshold : 400, }); Вывод изображения: <img class="lazyload" data-original="/default/images/sell-violet.jpg" placeholder="data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQImWNgYGBgAAAABQABh6FO1AAAAABJRU5ErkJggg=="> Заранее спасибо, за помощь! |
Заработало так:
$(document).bind('DOMNodeInserted', function(e) { .... }); |
Цитата:
Подскажите ещё вариант? |
Vaska,
информации недостаточно, что за плагин, что у вас заработало, почему img.lazyload-scroll и class="lazyload", это разные элементы или одни и теже и т.д. Код lazyload: примерно должен быть такой function lazy() { $("img.lazyload-scroll:not(.lazy)").addClass("lazy").lazyload({ //placeholder : "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8VA8AAmkBc7YFeIIAAAAASUVORK5CYII=", effect: "fadeIn", skip_invisible : false, threshold : 400, }); } lazy() запускать где вам надо и в строке 13. |
рони,
плагин ленивой загрузки использую такой Lazy Load 1.9.3 Mika Tuupola https://github.com/tuupola/lazyload Объясню суть где использую ленивую загрузку: есть конструктор дизайна страницы, на которой можно выбрать разные модули из имеющихся и перетаскиванием разместить на странице. По сути, в базу прописываются параметры модуля и адрес страницы, на которой размещается модуль. Ваш вариант работает с формой отлично, однако в момент перетаскивания нового дубликата модуля, содержащего изображение на страницу, изображение не подгружается. Как-то нужно сделать, чтобы при размещении модуля, скрипт один раз модуль перезагружал. Тот вариант, который я привел, с ним такой проблемы нет, он всё по два раза перезагружает где надо и не надо. |
Цитата:
Нужный экземпляр такой же, с нужным классом. |
Цитата:
|
рони,
теперь при перезагрузке страницы не грузятся фотки. Такой вариант правильно работает в любых условиях, в моём случае: $(document).on('DOMNodeInserted', '#scrollable', function() { $("img.lazyload").lazyload({ effect: "fadeIn", skip_invisible : false, threshold : 200, }) }); рони, спасибо за участие! |
Часовой пояс GMT +3, время: 18:55. |