Logo    
Новости мира IT Форумы Новые публикации Учебный центр Книжный магазин Реклама
CitForum    Весь CITForum на CD !!! Море(!) аналитической информации! :: CITFORUM.RU   

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Круглый стол "Конфликт менеджмента и ИТ:
от непонимания к синергии"

11 марта 2004г., Москва, "Марриотт Гранд Отель"

2.5. Графика

До Navigator 3.0 в JavaScript использовались только встроенные объекты типа Image. В новой версии языка появился конструктор для этого типа объектов:

	new_image = new Image()
	new_image = new Image (width,height)

Часто для целей создания мультипликации создают массивы графических объектов, которые потом прокручивают один за другим:

	img_array = new Array()
	img_array[0] = new Image(50,100)
	img_array[1] = new Image(50,100)
	....
	img_array[99] = new Image(50,100)

У объекта Image существует 10 свойств, из которых, пожалуй, самым важным является src. Так, для присваивания конкретных картинок элементам массива img_array следует воспользоваться следующей последовательностью команд:

	img_array[0].src = "image1.gif"
	img_array[1].src = "image2.gif"
	...
	img_array[99].src = "image100.gif"

В данном случае можно было воспользоваться и циклом для присвоения имен, так как они могут быть составлены из констант и значения индексной переменной. В новой версии языка объект типа Image можно поименовать в HTML-теге IMG. После этого можно обращаться к нему по имени. При этом следует учитывать, что если Image используется внутри формы, то он является свойством этой формы. Это значит, что для следующего графического объекта должны быть использованы разные составные имена:

	<img name=car src=car.gif> <--- Встроенный в документ объект
	document.car.src = "car1.gif"
	 
	<form name=kuku>
	<img name=car src=car.gif>   <-- Встроенный в форму документ.
	</form>
	document.kuku.car.src = "car1.gif"

Однако, наиболее часто в примерах использования скриптов можно встретить обращение к Image по индексу в массиве всех графических объектов данной страницы. Если наш объект, например, является вторым Image на странице, то будь он внутри формы или за ее пределами, к нему всегда можно обратиться по индексу:

	document.images[1].src = "car1.gif"

Расширяя наш пример с массивом Image построим теперь документ, в котором будет встроена мультипликация, определенная нашим массивом:

Пример 2.1

	<HTML>
	<HEAD>
	<SCRIPT>
	function multi_pulti()
	{
	img_array = new Array()
	img_array[0] = new Image(50,100)
	....
	img_array[99] = new Image(50,100)
	img_array[0].src = "image1.gif"
	...
	img_array[99].src = "image100.gif"
	n=0
	while(n==0)
	{
	document.images[0].src = img_array[0].src
	...
	}
	}
	</SCRIPT>
	</head>
	<body onLoad="multi_pulti()">
	<img src=image1.gif>
	</body>
	</html>

Довольно часто используют не мультипликацию, а выбор картинки через OPTION, другой новый объект JavaScript. При этом можно через поле формы SELECT менять не только саму картинку, но и гипертекстовую ссылку, которая может быть связана с этой картинкой. На гипертекстовую ссылку также можно ссылаться по индексу:

	document.links[index].href = kuku.html

Данный прием оправдан и с точки зрения интерфейса навигатора. При использовании такого сорта массивов ссылок не требуется их длительное перечисление и листание страницы в рабочей области навигатора - можно просто выбрать ссылку из "выпадающего" меню. Другой способ для сокращения числа нажатий на клавиши - использование событий. В том же объекте OPTION можно использовать событие onChange, что делает необязательным нажатие кнопок типа submit. В этом случае достаточно будет просто выбрать альтернативу и перейти к новой странице сразу после выбора.

Назад | Содержание | Вперед


Google
WWW CITForum.ru

Подписка на новости библиотеки:

Новые поступления в on-line библиотеку:

4 марта

  • Разработка критериев анализа систем автоматизации тестирования
  • Проблемы математического, алгоритмического и программного обеспечения компьютерной безопасности в Интернет
  • Возможности нападения на информационные системы банка из Интернета и некоторые способы отражения этих атак

    26 февраля

  • Системы обнаружения аномалий: новые идеи в защите информации
  • Средства разработки Java-приложений
  • Особенности работы Delphi с "русским" Excel'ем
  • Использование наследования форм для создания обработчика однотипных операций

    24 февраля

  • Тотальное внедрение: есть ли альтернатива?
  • Наследование типов объектов в Oracle
  • О беспроводных решениях
  • Обязательный Wi-Fi?
  • Стандарт для городских просторов

    19 февраля

  • Жизненный цикл обслуживания продуктов
  • Управление компанией можно довести до автоматизма
  • Вести с магнитных полей
  • Большие ЖК-мониторы для больших целей
  • WINNTик и ШпуNTик или Ставим В2К после В2К3

    17 февраля

  • Внедрение ИС: через тернии к звездам
  • Автоматизация документооборота компании - непростой выбор
  • Использование языка макрокоманд в AllFusion ERwin Data Modeler
  • Flash и CBuilder
  • Оптимизация соединения с Интернет

    12 февраля

  • Англо-русский и русско-английский словарь криптографических терминов
  • Информационная безопасность: экономические аспекты
  • Подход UniTesK к разработке тестов: достижения и перспективы
  • Динамическая поддержка расширений процессора в кросс-системе
  • О некоторых задачах анализа и трансформации программ

    10 февраля

  • Лучшие практические методы администрирования СУБД Oracle9i (часть I)
  • Атака на Windows NT
  • Чем измерить безопасность Интернет?

    Обзоры журнала Computer:

  • Скрытые контракты .NET
  • Web-сервисы: на пути к зрелости

    5 февраля

  • Команда "шаг" в параллельных отладчиках
  • Эвристики распределения задач для брокера ресурсов Grid
  • Серверы от российских разработчиков
  • Технология LaGrande: аппаратная защита будущего
  • Старые песни о главном
    О новых разработках в области полупроводников
  • Время собирать камни
    Обзор элементной базы для построения беспроводных сетей
  • Очипованный мир
    О технологии Radio Frequency IDentification - RFID
  • Киберкрыша
  • Mediation в телекоммуникациях или Что такое предбиллинг

    Все новости >>>

  • IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

    Реклама на IT-портале citforum.ru

    Нестандартные PR-акции - pr@citforum.ru
    Пресс-релизы и информация в каталог компаний - manager@citforum.ru
    Комментарии: info@citforum.ru Rambler's Top100 Copyright ©
    Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав.