Javascript-форум (https://javascript.ru/forum/)
-   Internet Explorer (https://javascript.ru/forum/css-html-internet-explorer/)
-   -   Не работает присвоение параметра объекту "images" (Только в IE) (https://javascript.ru/forum/css-html-internet-explorer/29429-ne-rabotaet-prisvoenie-parametra-obektu-images-tolko-v-ie.html)

KoenigDesign 27.06.2012 16:35

Не работает присвоение параметра объекту "images" (Только в IE)
 
Всем привет!
Прошу помощи в решении, наверное банального вопроса.

Для реализации динамичного присвоения картинке SRC и Onclick написал простую функцию:

function ban(loc,id){
     document.images['ban'+loc].src='data/img/cat/'+id+'_s.jpg'
     document.images['ban'+loc].onclick="location.href='.?p=catalog&item='+id"
}


Opera, Chrome, Firefox и Safari приняли всё как нужно, а вот IE присвоение значения для параметра onclick обрабатывать отказывается.

Буду очень благодарен тому, кто внесёт ясность в мою проблему) - Заранее спасибо.

Deff 27.06.2012 16:42

KoenigDesign,
Вы по onclick в теге <img - вызывайте onclick-функцию и ничо не меняейте в onclick, а меняйте лишь значение глобальной переменой для вызываемой функции

KoenigDesign 27.06.2012 17:50

Немножечко разверну вопрос:

Есть объект, В нашем случае картинка, изначально она прописана так:

<img src="data/img/cat/nobanner.gif" style="border:1px solid #33a6e2;" id="ban1">


Есть вышеприведённая функция:

function ban(loc,id){
	     document.images['ban'+loc].src='data/img/cat/'+id+'_s.jpg'
	     document.images['ban'+loc].onclick="location.href='.?p=catalog&item='+id"
}


Так же есть функция таймаута для вызова функции с нужным параметром:

setTimeout('ban(1,1)', 10000);


По сути, когда отрабатывает "сэттаймаут" SRC нашей картинки становится "data/img/cat/1_s.jpg", а кликом адресует на ".?p=catalog&item=1".

Напоминаю, что всё хорошо работает во всём, кроме IE.

Пытался изменить <IMG на "<img src="data/img/cat/nobanner.gif" style="border:1px solid #33a6e2;" id="ban1" onclick="location.href='.'">"
Т.е. добавил исходное значение "onclick="location.href='.'", подумал может IE не нравится, что этого параметра нет вовсе - тоже не помогло.

Большое спасибо Deff(у) за внимание и ответ, но не совсем его понял =( С JavaScript работаю сугубо по необходимости и потому не особо в нём силён.

Не могли бы Вы раскрыть чуть больше ответ?

lord2kim 27.06.2012 18:52

document.images['ban'+loc].onclick = function() { window.location.href='.?p=catalog&item='+id };


Часовой пояс GMT +3, время: 10:49.