Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Rollover Image, используется красивый приём 
:(
    Опции темы
maugli
Дата 8.3.2005, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 8.3.2005

Репутация: нет
Всего: нет



У меня возникала проблема. В старом добром Dreamweaver'е есть функция rollover image, но дело все в том, что мне нужно нечто другое. Допустим у меня есть 2 ссылки.
Навожу курсор на 1 ссылку и в одном месте появляется картинка (а желательно текст), а наведя курсор на 2 ссылку у меня в том же место должен появиться текст(ну или картинка smile). Вот, суть проблемы.
Я пробовал сделать через слои, но обнаружил, что при разном расширенни у все по-разному смориться, тое сть у меня красиво а у них не очень. Поэтому спрашиваю профи.!!!!
PM MAIL   Вверх
Се ля ви
Дата 8.3.2005, 17:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Java/SOAрхитектор
****


Профиль
Группа: Модератор
Сообщений: 2016
Регистрация: 5.6.2004
Где: place without tim e and space

Репутация: 5
Всего: 127



Лучше создавать всё динамически DOM-методами.
Код
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>


<script type="text/javascript" language="javascript1.2">
<!--[CDATA[
   function setContent(targetId, elemName, value){ // плюс парами - имя и значение атрибута
 
 args = arguments;
 
 var elem = document.createElement(elemName);
 
 if (args.length > 4)
  for (var i = 3; i < args.length; i += 2)
   elem.setAttribute(args[i], args[i + 1]);
 
 if (value)
  elem.appendChild( document.createTextNode(value) );
 
 document.getElementById(targetId).appendChild(elem);
 
}

function delContent(targetId) {
 
 var content = document.getElementById(targetId);
 
 for (var i = content.childNodes.length - 1; i > -1; i--)
  content.removeChild(content.childNodes[i]);
}
//]]-->
</script>

</head>

<body>

<!-- ... -->
<a href="#" onmouseover="delContent('div1'); setContent('div1', 'b', 'текст1');">т1</a><br />
<a href="#" onmouseover="delContent('div1'); setContent('div1', 'i', 'текст2');">т2</a><br />
<a href="#" onmouseover="delContent('div1'); setContent('div1', 'img', '', 'src', 'http://forum.vingrad.ru/style_images/1/logo.gif');">картинка</a>

<div id="div1"></div>

</body>
</html>



--------------------
  )
 (
[_])
проф. блог

Кролики думали, что занимаются любовью, а на самом деле их просто разводили...
PM MAIL WWW Skype GTalk   Вверх
Aliance
Дата 8.3.2005, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



По-моему не стоит ограничиватьсяч в версии браузера, отрезая старые. Можно задавать картинки name и менять ее src smile
Так же в IE можно предварительно закешировать картинку

Код обычного ролловера:
Код

<HTML>
<HEAD>
<title>Тест</title>

<script type="text/javascript">

if (document.images) {
(new Image(60,60)).src = "77.gif";
}

function rollover (name, src) {
  name.src = src;
}
</script>
</HEAD>

<BODY>

<div id="qwe" style="align: center; border: 1px red solid; margin: 5px; padding: 15px;">
<a href="#" onmouseover="rollover(roll, '77.gif')" onmouseout="rollover(roll, '14.gif')"><IMG src="14.gif" name="roll" border=0></a>
</div>

</BODY></HTML>

PM MAIL WWW ICQ Skype   Вверх
maugli
Дата 10.3.2005, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 56
Регистрация: 8.3.2005

Репутация: нет
Всего: нет



Да нет, мне не совсем ето нужно привиду пример, я сделал так www.muskat.h15.ru мне нужно тоже самое, но без использования слоев тобишь <div></div>
Это вообще возможно? Если да, то помогите плииз!!!
PM MAIL   Вверх
Sardar
Дата 10.3.2005, 21:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



maugli ты вообще догоняешь что такое слои? smile
Такой эффект можно получить двумя способами:
  • подменить содержимое элемента(слой, таблица, что у тебя на экране). Смотри пример Се ля ви
  • создать кучу слоёв с разным содержимым, все скрыть, а один оставить. при работе скрываем слои, показываем тот что нужно. Этот способ наиболее простой, ничего кроме getElementById и element.style.display=(none|block) знать/использовать не требуется smile



--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
batigoal
Дата 11.3.2005, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 1
Всего: 151



Цитата(Sardar @ 10.3.2005, 21:09)
Такой эффект можно получить двумя способами

А какой предпочтительнее?


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
Sardar
Дата 11.3.2005, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Воторой почти всегда, но если все мессаджи не известны(фреймовая структура, разные документы), то первый.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
batigoal
Дата 11.3.2005, 15:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 1
Всего: 151



Цитата(Sardar @ 11.3.2005, 15:08)
Воторой почти всегда

А почему? Вроде ж как первый стандартизирован в DOM'e. Или из-за простоты?


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
Sardar
Дата 11.3.2005, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Ничего не стандартизованно, просто легче! smile Если хочешь, то можешь написать шаблонизатор, загружающий интерактивно данные и шаблоны в завистимости от конкретного пользователя, и строящий мессаги. Всё что хочешь можно, вопрос лишь удобно ли тебе это и как сложно реализовать smile


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
batigoal
Дата 11.3.2005, 16:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 1
Всего: 151



Цитата(Sardar @ 11.3.2005, 16:30)
можешь написать шаблонизатор, загружающий интерактивно данные и шаблоны в завистимости от конкретного пользователя, и строящий мессаги

Э... Не могу... smile Но пока и не надо.


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0575 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.