[решено] Javascript. Скрыть - показать картинки при помощи getElementsByName

Аватара пользователя
Coutty

Re: [решено] Javascript. Скрыть - показать картинки при помощи getElementsByName

Сообщение Coutty »

Цитата Igor_I:



Не работает getElementsById.
[решено] Javascript. Скрыть - показать картинки при помощи getElementsByName




Потому что надо в единственном числе упоминать элемент, а не во множественном. Вот id уж точно не должен повторяться.

getElementById


Цитата Igor_I:



Только location и работает, на все остальное Furebug говорит "too much recursion" ругаясь на эту строчку
[решено] Javascript. Скрыть - показать картинки при помощи getElementsByName




Да, действительно =^_^'= Значит, придётся объекты искать по интернету.

Например, на w3schools.com

JavaScript reference


HTML DOM reference
(скорее всего именно это и заинтересует).
Аватара пользователя
Busla

Re: [решено] Javascript. Скрыть - показать картинки при помощи getElementsByName

Сообщение Busla »

Цитата Coutty:



Busla: Только спецификации html 4.01 предполагает, что name у изображений уникален

Тогда получается, что разработчики JS наплевали на спецификации - ведь метод возвращает массив
[решено] Javascript. Скрыть - показать картинки при помощи getElementsByName




ключевое слово у изображений
Аватара пользователя
Igor_I

Re: [решено] Javascript. Скрыть - показать картинки при помощи getElementsByName

Сообщение Igor_I »

Цитата Coutty:



Потому что надо в единственном числе упоминать элемент, а не во множественном. Вот id уж точно не должен повторяться.
[решено] Javascript. Скрыть - показать картинки при помощи getElementsByName




Так ведь он и не повторяется.

Зато я повторюсь Изображение Вот что я имелл ввиду.



Код:

Код: Выделить всё

function op() {
   for(i=1; i<<?=$image_on_page?>; i++)
      {
      document.getElementById( "img" + i).style.display = document.getElementById( "img" + i).style.display == 'none' ? 'inline' : 'none';
      }
}

А ещё я это нашел -
http://www.tutorialspoint.com/javascript/index.htm
Аватара пользователя
Coutty

Re: [решено] Javascript. Скрыть - показать картинки при помощи getElementsByName

Сообщение Coutty »

Я понял, в чём загвоздка - IE не отрабатывал событие onchange, пока не кликнешь по пустому месту. Поменяйте на onclick, а скрипт тоже чуть изменил:



Код:

Код: Выделить всё

function op() {
   chk = document.getElementById("chkbox").checked;
   for(i = 1; i < <?=$image_on_page?>; i++)
      {
      document.getElementById("img" + i).style.display = chk ? 'inline' : 'none';
      }
}



HTML код:

Код: Выделить всё

<th scope="col">Миниатюра<input type="checkbox" value="ON" id="chkbox" onclick="op()" /></th>
Аватара пользователя
Igor_I

Re: [решено] Javascript. Скрыть - показать картинки при помощи getElementsByName

Сообщение Igor_I »

Изображение

Если указаны width и height, но значения пустые, то ИЕ плюёт на изображение с высооооокой колокольни. То есть вообще его не показывает.



Напоследок, скрипт отмечающий все чекбоксы. Работает: IE 6.2900.2180, Firefox 2.0.0.1, Opera 9.27



Код:

Код: Выделить всё

function checkAll(oForm, cbName, checked)
{
	for (var i=0; i < oForm[cbName].length; i++)
	{
		oForm[cbName][i].checked = oForm[cbName][i].checked == false ?  true : false;
	}
}
Ответить

Вернуться в «Вебмастеру»