Использование XML

Рубрика: Язык разметки XML

Здравствуйте, уважаемые посетители сайта okITgo.ru! В статье приведены несколько технических приемов, которые следует избегать при использовагии XML.


Internet Explorer – Острова Данных XML

Что это? Остров данных XML – это XML данные, встроенные в HTML страницу.

Почему это надо избегать? Острова данных XML работают только в браузерах Internet Explorer.

Что использовать вместо этого? Вам следует использовать XML DOM и JavaScript для разбора и отображения XML в HTML.


Пример Острова Данных XML

Этот пример использует XML документ "cd_catalog.xml".

Привязка XML документа к тегу <xml> в HTML документе. Атрибут id определяет идентификатор id для острова данных, а атрибут src указывает на XML файл:

Пример

Этот пример работает только в IE

<html>
<body>

<xml id="cdcat" src="cd_catalog.xml"></xml>

<table border="1" datasrc="#cdcat">
<tr>
<td><span datafld="ARTIST"></span></td>
<td><span datafld="TITLE"></span></td>
</tr>
</table>

</body>
</html>

Попробуйте сами »

Атрибут datasrc тега <table> привязывает HTML таблицу к острову данных XML.

Теги <span> содержат атрибут datafld, ссылающийся на XML элемент, который необходимо показать. В данном случае это "ARTIST" и "TITLE". Когда XML файл считывается, создаются дополнительные строки для каждого элемента <CD>.


Internet Explorer – Поведение

Что это? Internet Explorer 5 ввел такое понятие как поведение. Поведение – это способ добавления свойств (характеристик, поведения) к XML (или HTML) элементам с использованием CSS стилей.

Почему избегать этого? Атрибут behavior поддерживается только браузером Internet Explorer.

Чем заменить? Использовать XML DOM (или HTML DOM) и JavaScript вместо этого.

Пример 1 – Подсветка при Перемещении Мыши

Следующий HTML файл содержит элемент <style>, который определяет поведение (behavior) для элемента <h1>:

<html>
<head>
<style type="text/css">
h1 { behavior: url(behave.htc) }
</style>
</head>
<body>

<h1>Переместите мышь надо мной!!!</h1>

</body>
</html>

XML документ "behave.htc" показан ниже (Файл содержит JavaScript и обработчики событий для элементов):

<attach for="element" event="onmouseover" handler="hig_lite" />
<attach for="element" event="onmouseout" handler="low_lite" />

<script type="text/javascript">
function hig_lite()
{
element.style.color=’red';
}

function low_lite()
{
element.style.color=’blue';
}
</script>

Попробуйте сами »

Пример 2 – Имитация Пишущей Машинки

Следующий HTML файл содержит элемент <style>, который определяет поведение (behavior) для элементов с идентификатором id равным "typing":

<html>
<head>
<style type="text/css">
#typing
{
behavior:url(typing.htc);
font-family:’courier new';
}
</style>
</head>
<body>

<span id="typing" speed="100">IE5 добавил DHTML поведение.
Поведение – это способ добавления функциональности DHTML к HTML элементам
с простотой CSS.Как поведение работает?
Используя XML мы можем привязать поведение к любому элементу на веб странице
и манипулировать этим элементом.</p> </span>

</body>
</html>

XML документ "typing.htc" показан ниже:

<attach for="window" event="onload" handler="beginTyping" />
<method name="type" />

<script type="text/javascript">
var i,text1,text2,textLength,t;

function beginTyping()
{
i=0;
text1=element.innerText;
textLength=text1.length;
element.innerText="";
text2="";
t=window.setInterval(element.id+".type()",speed);
}

function type()
{
text2=text2+text1.substring(i,i+1);
element.innerText=text2;
i=i+1;
if (i==textLength)
  {
  clearInterval(t);
  }
}
</script>

Попробуйте сами »

Спасибо за внимание! До новых встреч на страницах сайта okITgo.ru.

Ваш отзыв