Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 23.08.2010, 16:49
Аватар для Gozar
Отправить личное сообщение для Gozar Посмотреть профиль Найти все сообщения от Gozar
 
Регистрация: 07.06.2007
Сообщений: 7,504

<!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">
function over(file_name)
{
	img = document.createElement('div');
	document.body.appendChild(img);
	img.innerHTML = '<img src='+file_name+' />';
	img.style.position = 'absolute';
	img.style.background = '#FFFFFF';
	img.style.border = 'solid 1px #346fdc';
	img.style.padding = '4px';
	move();
}
function move(e)
{
	e = e || window.event
	if (e.pageX == null && e.clientX != null )
		{
			var html = document.documentElement
			var body = document.body
			e.pageX = e.clientX + (html && html.scrollLeft || body && body.scrollLeft || 0) - (html.clientLeft || 0)
			e.pageY = e.clientY + (html && html.scrollTop || body && body.scrollTop || 0) - (html.clientTop || 0)
		}
	img.style.left = e.pageX + 15 + 'px';
	img.style.top = e.pageY + 15 + 'px';
}
function out()
{
	document.body.removeChild(img);
}
</script>
</head>

<body>
	<div><a href="" onmouseover="over('http://javascript.ru/forum/images/ca_serenity/misc/logo.gif')" onmousemove="move(event)" onmouseout="out()">link</a></div>
</body>
</html>


так правильнее, не забываем про пиксели + 'px';:
img.style.left = e.pageX + 15 + 'px';
Ответить с цитированием
  #12 (permalink)  
Старый 23.08.2010, 17:39
Кандидат Javascript-наук
Отправить личное сообщение для abc_ua Посмотреть профиль Найти все сообщения от abc_ua
 
Регистрация: 20.05.2010
Сообщений: 105

Gozar,
Огромнейшее спасибо!!!!!
Ответить с цитированием
  #13 (permalink)  
Старый 28.09.2010, 22:18
Аспирант
Отправить личное сообщение для shureg Посмотреть профиль Найти все сообщения от shureg
 
Регистрация: 12.06.2010
Сообщений: 53

А не подскажите такое-же выражение только выполненое на Jquery ?

что-то тип такого:
$(document).ready(function() {
    $("a").onmousemove(function() {......})
})

к сожалению незнаю как координаты на Jq узнать(((((

Последний раз редактировалось shureg, 28.09.2010 в 22:22.
Ответить с цитированием
  #14 (permalink)  
Старый 29.09.2010, 09:27
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

ну почти так же.

$(function(){
		$("a").mouseover(function(e){$(document.body).append('<div id="prev" style="position:absolute;background-color:#FFF;border:solid 1px #346fdc; padding:4px;top:'+e.pageY+15+';left:'+e.pageX+15+'"><img src="'+$(this).attr("href")+'"/></div>');});
		$("a").mousemove(function(e){$("#prev").css({top:e.pageY+15,left:e.pageX+15});});
		$("a").mouseout(function(){document.body.removeChild(document.getElementById("prev"));});
	});

<div><a href="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif">link</a></div>
    <div><a href="http://img.yandex.net/i/www/logo.png">link</a></div>
    <div><a href="http://www.google.ru/images/logos/ps_logo2.png">link</a></div>
__________________
.

Последний раз редактировалось Skipp, 29.09.2010 в 09:59.
Ответить с цитированием
  #15 (permalink)  
Старый 29.09.2010, 10:45
Аспирант
Отправить личное сообщение для shureg Посмотреть профиль Найти все сообщения от shureg
 
Регистрация: 12.06.2010
Сообщений: 53

Спасибище!
Ответить с цитированием
  #16 (permalink)  
Старый 29.09.2010, 12:09
Кандидат Javascript-наук
Отправить личное сообщение для abc_ua Посмотреть профиль Найти все сообщения от abc_ua
 
Регистрация: 20.05.2010
Сообщений: 105

Очень удобно и кратко получилось, спасибо, но для этого способа придется пожертвовать валидностью(вводя новый атрибут) и вынести скрипт во внешний .js файл не получится, да?

если не сложно, дайте пожалуйста ссылки где почитать про $ и get

Последний раз редактировалось abc_ua, 29.09.2010 в 12:12.
Ответить с цитированием
  #17 (permalink)  
Старый 29.09.2010, 12:20
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

http://jquery-docs.ru/Selectors/
http://jquery-docs.ru/Ajax/jQuery.ge...tacallbacktype
Ответить с цитированием
  #18 (permalink)  
Старый 29.09.2010, 22:02
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

На днях, подобная задача стояла, только подсказка по клику исчезала и на нее можно было переносить фокус:


<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<style type="text/css">
.block {
	position:absolute;
	top:20%;
	left: 40%;
	width: 200px;
	height: 50px;
}

.block img{
	position: absolute;
	top: 20px;
}
</style>

<script type="text/javascript">
$(function(){
	$('.block').each(function(){
		$(this).find('a').mouseover(function(){
			$(this).next("img").length < 1 && $(this).after('<img src="'+$(this).attr('rel')+'" />');
		});
		$(document).click(function(e){
			(e.target.nodeName != $('.block img').get(0).tagName) && $(this).find('img').remove();
		});
	});
});
</script>

<div class="block">
	<a href="#" rel="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif">link</a>
</div>
Ответить с цитированием
  #19 (permalink)  
Старый 30.09.2010, 09:16
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

monolithed,
Вы бы ещё setTtimeout поставили.
__________________
.
Ответить с цитированием
  #20 (permalink)  
Старый 14.05.2011, 01:41
Кандидат Javascript-наук
Отправить личное сообщение для abc_ua Посмотреть профиль Найти все сообщения от abc_ua
 
Регистрация: 20.05.2010
Сообщений: 105

разобрался

Последний раз редактировалось abc_ua, 14.05.2011 в 17:53.
Ответить с цитированием
Ответ



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

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