Javascript.RU

Динамическое создание элементов javascript. Работа с CSS на javascript. Как создать элемент с помощью scriptjava?

Прежде чем начать создавать элементы, перед тегом head подключим scriptjava фреймворк

<script type="text/javascript" src="http://scriptjava.net/source/scriptjava/scriptjava.js"></script>

Теперь можно приступить к созданию элементов, для этого пишем вот такой код:

<script type="text/javascript">
//создаю элемент
var new_div = $$i({
  create:'div',
  attribute: {
    'style':'color:#00ffff; width:300px; height:50px; background:#0000ff;'
  },
  insert:$$().body
});
//прописываем стили для осла 6 версии IE6
$$(new_div).$$('color','#00ffff').$$('width','300px').$$('height','50px').$$('background','#0000ff');
//вставляю текст
$$(new_div).$$('Всем привет!');
</script>

Как видите все довольно просто
Мы создали новый div и вставили в него текст Всем привет!

С помощью строки

$$(new_div).$$('color','#00ffff').$$('width','300px').$$('height','50px').$$('background','#0000ff');

мы повторно добавили стили CSS которые уже были созданы при создании элемента и прописаны в свойстве attribute
Есле вы все еще не можете расстаться с ослом 6 версии (IE6) и ниже, то прийдется вот именно так решать проблему добавления стилей.
Впрочем эта строка не обязательна.

В свойстве insert мы указали куда будет вставлен новый элемент - в тело документа

удалить созданный элемент также просто как и создать

$$().body.removeChild(new_div);

Работать с CSS в scriptjava очень просто
Допустим у нас на странице есть элемент

<div id="code"></div>

и мы решили поменять стили у этого элемента, вставить текст

нет ничего проще

$$('code','текст').$$('color','#00ffff').$$('background','#0000ff');

можно написать и так

$$('code').$$('color','#00ffff').$$('background','#0000ff').$$('текст');

или даже так

$$('code','color','#00ffff').$$('текст').$$('background','#0000ff');

Эти коды делают одно и тоже, результат будет одинаковым

Теперь допустим на странице несколько элементов, и для них так же нужно поменять стили и вставить текст...

<div id="code1"></div>
<div id="code2"></div>

добавим стили к этим элементам и вставим текст

$$('code1','текст1').$$('color','#00ffff').$$('background','#0000ff');
$$('code2','текст2').$$('color','#00ffff').$$('background','#0000ff');

но все это дело можно переписать и в одну строку, результат будет таким же

$$('code1','текст1').$$('color','#00ffff').$$('background','#0000ff').$$().$$('code2','текст2').$$('color','#00ffff').$$('background','#0000ff');

Элементов может быть больше, ограничений нет

вот например такой код

$$().body

не что иное как

document.body

Но не нужно думать что на этом возможности библиотеки работы с DOM заканчиваются, на против это только начало длинной истории...

+5

 
Поиск по сайту
Другие записи этого автора
gordon freeman
Содержание

Учебник javascript

Основные элементы языка

Сундучок с инструментами

Интерфейсы

Все об AJAX

Оптимизация

Разное

Дерево всех статей

Популярные таги
Последние темы на форуме
Forum