Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.12.2011, 15:21
Аспирант
Отправить личное сообщение для zloctb Посмотреть профиль Найти все сообщения от zloctb
 
Регистрация: 17.11.2011
Сообщений: 39

подправте скрипт
пРошу вашей помощи!Задача такая:
нужно чтобы при наведении курсора на картинку всплывала подсказка!
Конечно ,я могу навесить на каждую отдельную картинку обработчик и тогда се буде ок,но хочется написать толковый код

<!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>Документ без названия</title>

<style>
li{list-style:none;float:left;margin:20px;position:relative}
div{position:absolute;display:none;
top:50px;left:50px;
background:black;}
</style>




</head>

<body>

<ul>
<li><img src="1.jpg" width=100px height=100px /><div id="one1">Кликнув по картинке выше, вы попадете на сайт Nike. Покрутите колесико мышки вниз. Правда, прикольно? Это вариант так называемого эффекта Parallax. Он не так уж давно применяется в веб, но его уже можно встретить на десятках сайтов. На днях в статье о дружественном духе сайтов Дежурка публиковала пример дизайна персонажей от Турбомилк, где они используют палаллакс в более привычном варианте. А вот на сайте Silverback эффект заметен только в момент, когда пользователь изменяет размер окна браузера. Кому интересны научные стороны вопроса – загляните одним глазком в статью о параллаксе на Википедии, коротко и ёмко, как и всегда.</div></li>
<li><img src="2.jpg" width=100px height=100px /><div id="one2">КЯн Лунн написал отличнейший туториал о том, как воссоздать эффект параллакса с сайта Найк. Смотрим здесь.</div></li>
<li><img src="3.jpg" width=100px height=100px /><div id="one3">И этот впечатляющий эффект не так уж и сложно повторить! Штука эта называется Dragdealer. Это JavaScript компонент, ориентированный на управление мышкой и имеющий воистину неограниченное количество вариантов развития и применения. Отличный подарок для программистов JavaScript..</div></li>
<script>
im=document.getElementsByTagName('img')
for(i=0;i<im.length;i++){
im[i].onmouseover=function(){
	document.getElementById('one'+i+1).style.display='block'
}
im[i].onmouseout=function(){
	document.getElementById('one'+i+1).style.display='none'
}
}
</script>
</body>
</html>
Ответить с цитированием
  #2 (permalink)  
Старый 07.12.2011, 15:36
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,124

Пример сделал - однозначно молодец.
Как вариант...

<!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>
<title>Документ без названия</title>
<style>
li{list-style:none;float:left;margin:20px;position:relative}
div{
	position:absolute;display:none;
	top:50px;left:50px;
	background:black;
	color: #ffffff;
}
</style>
</head>
<body>
<ul>
<li><img src="1.jpg" width=100px height=100px /><div id="one1">Кликнув по картинке выше, вы попадете на сайт Nike. Покрутите колесико мышки вниз. Правда, прикольно? Это вариант так называемого эффекта Parallax. Он не так уж давно применяется в веб, но его уже можно встретить на десятках сайтов. На днях в статье о дружественном духе сайтов Дежурка публиковала пример дизайна персонажей от Турбомилк, где они используют палаллакс в более привычном варианте. А вот на сайте Silverback эффект заметен только в момент, когда пользователь изменяет размер окна браузера. Кому интересны научные стороны вопроса – загляните одним глазком в статью о параллаксе на Википедии, коротко и ёмко, как и всегда.</div></li>
<li><img src="2.jpg" width=100px height=100px /><div id="one2">КЯн Лунн написал отличнейший туториал о том, как воссоздать эффект параллакса с сайта Найк. Смотрим здесь.</div></li>
<li><img src="3.jpg" width=100px height=100px /><div id="one3">И этот впечатляющий эффект не так уж и сложно повторить! Штука эта называется Dragdealer. Это JavaScript компонент, ориентированный на управление мышкой и имеющий воистину неограниченное количество вариантов развития и применения. Отличный подарок для программистов JavaScript..</div></li>
<script>
var im=document.getElementsByTagName('img');
var i;
for(i=0;i<im.length;i++) {
	im[i].onmouseover=function(){
		this.nextSibling.style.display='block';
	};
	im[i].onmouseout=function(){
		this.nextSibling.style.display='none';
	};
}
</script>
</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 07.12.2011, 15:42
Аспирант
Отправить личное сообщение для zloctb Посмотреть профиль Найти все сообщения от zloctb
 
Регистрация: 17.11.2011
Сообщений: 39

пасиб за робочий ответ!!
у меня теперь паника))
вроде учил nextSibling не поддерж новыми браузерами ,а нада nextElementSibling
Ответить с цитированием
  #4 (permalink)  
Старый 07.12.2011, 15:46
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,124

zloctb, я посмотрел свой примерчик

<!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>
<title>Документ без названия</title>
<style>
li{list-style:none;float:left;margin:20px;position:relative}
div{
	position:absolute;display:none;
	top:50px;left:50px;
	background:black;
	color: #ffffff;
}
</style>
</head>
<body>
<ul>
<li><img src="http://javascript.ru/forum/images/smilies/smile.gif" width=100px height=100px /><div id="one1">Кликнув по картинке выше, вы попадете на сайт Nike. Покрутите колесико мышки вниз. Правда, прикольно? Это вариант так называемого эффекта Parallax. Он не так уж давно применяется в веб, но его уже можно встретить на десятках сайтов. На днях в статье о дружественном духе сайтов Дежурка публиковала пример дизайна персонажей от Турбомилк, где они используют палаллакс в более привычном варианте. А вот на сайте Silverback эффект заметен только в момент, когда пользователь изменяет размер окна браузера. Кому интересны научные стороны вопроса – загляните одним глазком в статью о параллаксе на Википедии, коротко и ёмко, как и всегда.</div></li>
<li><img src="http://javascript.ru/forum/images/smilies/wink.gif" width=100px height=100px /><div id="one2">КЯн Лунн написал отличнейший туториал о том, как воссоздать эффект параллакса с сайта Найк. Смотрим здесь.</div></li>
<li><img src="http://javascript.ru/forum/images/smilies/laugh.gif" width=100px height=100px /><div id="one3">И этот впечатляющий эффект не так уж и сложно повторить! Штука эта называется Dragdealer. Это JavaScript компонент, ориентированный на управление мышкой и имеющий воистину неограниченное количество вариантов развития и применения. Отличный подарок для программистов JavaScript..</div></li>
<script>
(function () {
	var im=document.getElementsByTagName('img');
	var i;
	for(i=0;i<im.length;i++) {
		im[i].onmouseover=function(){
			this.nextSibling.style.display='block';
		};
		im[i].onmouseout=function(){
			this.nextSibling.style.display='none';
		};
	};
})();
</script>
</body>
</html>


В ИЕ8, ФФ, Опере и Хроме - всё работает...
Ответить с цитированием
  #5 (permalink)  
Старый 07.12.2011, 15:51
Аспирант
Отправить личное сообщение для zloctb Посмотреть профиль Найти все сообщения от zloctb
 
Регистрация: 17.11.2011
Сообщений: 39

Ну теперь понятно стало новые браузеры поддерж и nextElementSibling и nextSibling!Пасиб
Ответить с цитированием
  #6 (permalink)  
Старый 07.12.2011, 15:52
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

ksa,
ну а если между тегом img и div будет хотя бы перевод строк, тогда не заработает. По крайней не везде будет работать. Поэтому и нужно юзать nextElementSibling но он не поддерживается в старых браузерах.
Ответить с цитированием
  #7 (permalink)  
Старый 07.12.2011, 15:54
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,124

Сообщение от devote
если между тегом img и div будет хотя бы перевод строк, тогда не заработает
Ну почему не заработает... Просто нужно будет делать некий поиск "нужного" следующего элемента...
Ну а там по накатаной дорожке...
Ответить с цитированием
  #8 (permalink)  
Старый 07.12.2011, 15:55
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от ksa
Ну почему не заработает...
ответ:
Сообщение от ksa
Просто нужно будет делать некий поиск "нужного" следующего элемента...
Сам же и ответил, nextSibling выдает все элементы, в том числе и элемент #text поэтому и нужно его выкидывать.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не работает скрипт :( VladimirV Javascript под браузер 5 21.12.2010 14:26
Как украсть скрипт? bayah Общие вопросы Javascript 6 26.04.2010 10:32
Хочу скрипт! (скрипт калькулятора на сайт) Georgiy Общие вопросы Javascript 6 28.01.2010 15:09
А как зделать скрипт, чтобы например скрипт 1 заменялся скриптом 2? yura371 Общие вопросы Javascript 3 06.01.2009 22:40
добавление окошка в скрипт подсчета слов Гость Общие вопросы Javascript 10 11.03.2008 17:07