Forum Webscript.Ru
Программирование => JavaScript & JScript => Тема начата: docker от 21 Февраля 2004, 17:50:53
-
Добрый день!
У меня вопрос, по каким свойствам у объекта document находится массив всех объектов страницы. И что в каких браузерах поддервивается.
Сам я вспомнил только all, т.е.:
document.all
Но мне почему-то кажется, что это не во всем браузерах поддерживается.... Что там еще есть из этого же разряда?
Заранее спасибо!!!!
-
Да... верно. IE поддерживает свойство all объекта document. Но в NN это непройдет. Вообще, привычно используют в IE document.getElementById("..."), а в NN, например, проходит только document.ids("..."). Вообще, написание кросс-браузерного кода --- проблемма не решающаяся изящными методами. К сожалению здесь приемлим только один вариант --- определение типа браузера и исполнение соответствующего ему куска кода. Именно так... когда-то с коллегами пришлось создавать меню на странице... так вот, обрабатывающий события код писался в двух экземплярах (мы ориентировались только на IE и NN). Ну а определение, собственно, таково:
var type_of_browser = navigator.appName.substring(0, 1);
switch (type_of_browser)
{
case \'M\': ...код для IE; break;
case \'N\': ...код для NN; break;
.......другие браузеры....
};
В общем случае приходится разбираться с спецификацией DOM для каждого браузера в отдельности... что тут поделаешь....
-
Werwolf13:
Да... верно. IE поддерживает свойство all объекта document. Но в NN это непройдет. Вообще, привычно используют в IE document.getElementById("...")...
У меня заранее неизвестно какие id будут у нужных мне элементов. Поэтому getElementById() мне не подходит. Мне нужно пройтись по всем элементам и по некоторым условиям отобрать нужные.
Хорошо, в IE для этого используется all, в NN - ids, а в Опере?
-
Опера... (седьмая) all поддерживает... даже all.tags() у нее есть... А вообще, надо обращаться к соответствующим спецификациям... я, к сожалению, всего не упомню...
-
docker
Посмотри http://www.srccode.spb.ru/?setp=32#takeobject
Пример поиска всех таблиц в документе.
-
document.childNodes значит тоже можжно использовать? Хорошо!!!!