Цитата:
Проблема в том, что как я понял изображения нужно вставить в html-код корзины. Но она то на всех страницах есть, а изображения источники только на конкретных страницах. Например, находимся на странице 2, узнаем что изображения нет, нечто вставляем. А как с другими товарами корзины, например со страниц 1 и 3, на которых тоже нет изображений? Или не так понятно? |
Это сервер + CMS на ней, они не разделимые, называется ucoz. Так понятней :)
доступ к своему серверу у вас есть Нет полного доступа :) , в основном только через CMS и хранилище под личные файлы, поверьте на слово! js вы бы не могли изменить JS вставляется в шаблоны страниц как я понял изображения нужно вставить в html-код корзины. Но она то на всех страницах есть Неправильно поняли, с той корзиной которая на всех страницах, как раз таки проблем нет, там я сделал все как надо, и фото показываются. А вот когда переходишь на страницу корзины (страница оформления заказа), вот там то доступа к содержимому нет, как я писал выше выводится оператором. туманите мозги Получается то наоборот, что вы мне туманите мозги. Просишь помочь скрипт написать по исходным данным, а в ответ получаешь кучу советов :) . Если бы это можно было без скрипта сделать, я бы тут не задавал вопросы. |
Цитата:
Цитата:
Еще раз, а тем более о полной корзине речь: пользователь на странице корзина, страницы товаров недоступны, каким образом можно с них получить изображения? 1) Если все так плохо, значит придется организовывать на стороне клиента мини-базу по хранению ссылок на изображения. Если пользователь на странице товара и в "базе" ссылки на картинку этого товара нет - сохранить. На странице корзины - если нет изображения, то извлечь ссылку из базы. При этом товары в корзине и ссылки в базе должны иметь идентификаторы, по которым их можно "связать". 2) Если изображения именуются по идентификатору товара и имеют единый базовый путь, тогда может быть просто "рассчитать" такой путь на клиенте. То есть у вас два выхода из предложенных. Вопрос - как связать "место" в корзине с картинками товаров? |
Цитата:
Именно поэтому вам и начали мозг совокуплять. Правильнее реализовать так, чтобы сервер сразу возвращал все необходимые данные. Раз уж реализовать этот правильно нельзя, то нужно хотя бы нагрузку на сервер уменьшить. Попробуйте этот код:
$('#order-table > div').each(function(){
var $this=$(this),
$img=$this.find('>div:eq(1) img[src=""]'),
$link=null,
src=null;
if(!$img.length)
return;
$link=$this.find('>div:eq(2) a');
if(!!src=storage_get_img_src($link.attr('href')))
return $img.attr('src',src);
(function($img,$link){
$.get($link.attr('href'),function(html){
var src=$(html).find('img[alt="'+$link.text()+'"].link-photo');
if(!src.length)
throw new Error('Image not found');
storage_set_img_src($link.attr('href'),src);
$img.attr('src',src);
});
})($img,$link);
});
function storage_get_img_src(url){
if(!window.localStorage)
return null;
return localStorage.getItem(url);
}
function storage_set_img_src(url,src){
if(!window.localStorage)
return false;
localStorage.setItem(url,src);
return true;
}
|
| Часовой пояс GMT +3, время: 17:49. |