Модела на Microsoft
Осигурен е достъп до всички елементи на страницата, които се разглеждат
като обекти на документ. Всички са достъпни по индекс, име или идентификационен
номер. Например, за да се изпишат имената на всички тагове в страницата
се използва следния код:
for (i=0; i < document.all.length; i++)
{
document.write(document.all[i].tagName
+ "\n");
}
За достъп до тага по номер може да се използва:
document.write("myLayer visibility is:" +
document.all['myLayer'].style.visibility);
В Netscape модела
Съществува достъп до специфични групи от елементите на страницата
- например пластовете. Пластовете в Navigator включват областите
заградени от тага <layer> и областите, зададени с CSS. Елементите
също могат да бъдат достъпни по индекс, име и номер в тези колекции.
Пример за имената на таговете:
for (i=0; i < document.layers.length; i++)
{
document.write(document.layers[i].name
+ "\n");
}
по идентификационнен номер:
document.write("myLayer visibility is:" +
document.layers['myLayer'].visibility);
Модел, съчетаващ двата
За достъп до обект, независимо в кой от двата браузъра, може да
се използва променлива, която да има различна стойност в зависимост
от използвания браузър и по-нататък да се използва само тази нейна
стойност.
if (navigator.appName == "Netscape")
{
layerRef="document.layers";
styleRef="";
} else {
layerRef="document.all";
styleRef=".style";
}
Тогава ще е нужен само един код, чрез създаване на връзки между
обектите:
isVisible = eval(layerRef + '["myLayer"]' + styleRef + '.visibility'); |