Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.10.2009, 14:27
Новичок на форуме
Отправить личное сообщение для Hazard Посмотреть профиль Найти все сообщения от Hazard
 
Регистрация: 02.10.2009
Сообщений: 5

Кнопочка ЗАПОМНИТЬ
Здравствуйте, форумчане.

Обращаюсь за помощью к спецам, поскольку в яве не очень силен (а заодно может кому-то и пригодится в дальнейшем эта тема).

На странице http://www.dream-land.ru/catalog/beds/all_beds_test.php на трех верхних картинках мы видим небольшое меню - 3 иконки - Распечатать, Увеличить, Запомнить. С первыми двумя справился, речь пойдет о третьей. Задача следующая: необходимо, чтобы при клике иконка выделялась (подгружается вторая иконка другого цвета), а при последующем клике выделение снималось и загружалась опять же первая иконка. Таким образом пользователь мог бы запомнить интересующий его товар в каталоге. Когда я тестировал вышеуказанное на одной иконке все работало, как только поставил идентичные иконки на другие товары начались глюки (попробуйте покликать по иконкам). Видимо не разобрался с ID-шками для иконок (как их поставить для каждой?).

Вот код:
<div style="RIGHT: 14px; POSITION: absolute; TOP: 0px; cursor: hand;" alt="Запомнить" title="Запомнить">
<script type="text/javascript">
var apict1 = new Array('/catalog/beds/images/ico/vg.gif'); // исходные файлы
var apict2 = new Array('/catalog/beds/images/ico/vo.gif'); // заменяемые файлы
var aflag = new Array(apict1.length); // массив флагов
/* Формирование строки тегов, описывающих изображения */
var xstr = '';
for(i = 0; i < apict1.length; i++){
xstr += '<img id="i'+i+'" src="'+apict1[i]+'" onclick="imgchange(this.id);">';
}
document.write(xstr);
function imgchange(XZid){
var xid = XZid;
var n = eval(xid.replace('i','')); // выделяем номер элемента
if(aflag[n]){
document.getElementById(xid).src = apict1[n];
} else {
document.getElementById(xid).src = apict2[n];
}
aflag[n] =!aflag[n];
}
</script></div>

Итак, вопросы:
1). Как избавиться от глюков и сделать так, чтобы каждую иконку можно было выделить и затем снять с нее выделение?
2). Как избавиться от необходимости каждый раз прописывать весь громоздкий шрифт для каждой иконки и тем самым нагружать код?
3). Очень важный вопрос. Допустим пользователь выбрал несколько интересных ему товаров (запонив их нажатием на иконки) и ушел со страницы каталога. Как добиться того, чтобы запомненные иконки оставались нажатыми при возврате к странице?

Заранее спасибо, очень надеюсь на помощь!
Ответить с цитированием
  #2 (permalink)  
Старый 02.10.2009, 19:11
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

Ответы:
1. присвоить каждой иконке уникальный id (тут для фантазии поле непаханное)
2. присвоить css class
3. http://javascript.ru/unsorted/storage
Ответить с цитированием
  #3 (permalink)  
Старый 03.10.2009, 15:47
Новичок на форуме
Отправить личное сообщение для Hazard Посмотреть профиль Найти все сообщения от Hazard
 
Регистрация: 02.10.2009
Сообщений: 5

Gozar, спасибо за проявленный интерес!
По поводу 1-ого и 2-ого можно пример?
Ответить с цитированием
  #4 (permalink)  
Старый 03.10.2009, 23:05
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

Боюсь что я не смогу Вам ничем помочь, я не посмотрел внимательно код который Вы привели(код нужно форматировать для лучшей читабельности, на этом форуме есть спец.теги, для этого).
Вам нужно учить язык!

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

Последний раз редактировалось Gozar, 03.10.2009 в 23:12.
Ответить с цитированием
  #5 (permalink)  
Старый 05.10.2009, 10:39
Новичок на форуме
Отправить личное сообщение для Hazard Посмотреть профиль Найти все сообщения от Hazard
 
Регистрация: 02.10.2009
Сообщений: 5

Может эти вещи можно как-то по другому решить?
Никто не может помочь?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jquery.dynatree + cookie не получается запомнить открытый путь дерева. ast-ross jQuery 4 24.03.2009 05:54
Как запомнить положение скрола? test_1 Общие вопросы Javascript 2 10.03.2009 13:38
меняющаяся кнопочка magistr_bender Элементы интерфейса 2 28.09.2008 23:59