Javascript.RU

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

вопрос по jQuery
такой вот вопрос - нужно чтобы при наведении курсора на элемент Х элемент У медленно появлялся как бы из под элемента Х, а при отведении элемент У должен медленно растворяться. При использовании этого кода

$(".x").mouseover(function(){
$(".y").slideDown("slow");

});

$(".x").mouseout(function(){
$('.y').fadeOut('5000');
});

элемент У появляется откуда-то сбоку и по несколько раз, даже если курсор не на Х. подскажите, как с этим бороться.
Изображения:
Тип файла: jpg XY.jpg (30.5 Кб, 3 просмотров)

Последний раз редактировалось dianitka, 06.11.2010 в 20:41. Причина: добавление изо
Ответить с цитированием
  #2 (permalink)  
Старый 06.11.2010, 20:42
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

внимательнее выбирайте раздел при создании тем.
перенес
Ответить с цитированием
  #3 (permalink)  
Старый 06.11.2010, 21:20
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Как вариант:
<script src="http://code.jquery.com/jquery.min.js" type="text/javascript"></script>

<div id="slide">
    <div class="div1"></div>
    <div class="div2"></div>
</div>

<style type="text/css">
#slide {overflow: hidden;width: 100px;height: 100px;}
#slide div {width: 100px;height: 100px;}
.div1 {background: red;}
.div2 {background: green;display: none;}
</style>

<script type="text/javascript">
$(function(){
    $('#slide div').click(function(){
         $(this).slideToggle().fadeTo('fast', 0.1).siblings('div').slideToggle().fadeTo('fast', 1);
    });
});
</script>
Ответить с цитированием
  #4 (permalink)  
Старый 06.11.2010, 21:42
Интересующийся
Отправить личное сообщение для dianitka Посмотреть профиль Найти все сообщения от dianitka
 
Регистрация: 06.11.2010
Сообщений: 24

спасибо за ответ, но я имела в виду не совсем этой результат.
элемент Х должен оставаться на месте, тех же размеров, появляется и растворяется только элемент У.
Ответить с цитированием
  #5 (permalink)  
Старый 07.11.2010, 11:11
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

<html>
	<head>
		<script type='text/javascript' src='http://code.jquery.com/jquery-1.4.3.min.js'>
		</script>
	</head>
	<body>
		<div style='z-index: 1; background: #555555; width: 100px; height: 50px; position: absolute; top: 50px' id='large'>
		</div>
		<div style='display: none; background: orange; width: 70px; height: 30px; position: absolute; left: 22px; top: 40px' id='small'>
		</div>
		<script type='text/javascript'>
			$("#large").one("click", function () {
				var callee = arguments.callee, t = $(this);
				if (this.clicked  = !this.clicked)
					$("#small").show().animate({
						top: "20px"
					}, 300, function () {
						t.one("click", callee);
					});
				else
					$("#small").fadeOut("normal", function () {
						t.one("click", callee);
						$(this).css("top", "50px");
					});
			});
		</script>
	</body>
</html>
Ответить с цитированием
  #6 (permalink)  
Старый 07.11.2010, 14:18
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

А вот оно что
Тогда мне кажется проще так:
<html>
    <head>
        <script type='text/javascript' src='http://code.jquery.com/jquery-1.4.3.min.js'>
        </script>
    </head>
    <body>
          <div id='block'>
              <div id='large'></div>
              <div id='small'></div>
          </div>
        
        <style type="text/css">
        #block, #large, #small {position: absolute;}
        #block {overflow: hidden; width: 100px; height: 100px;}
        #large {background: #555555; top: 50px; width: 100px; height: 50px; z-index: 1;}
        #small {background: orange; display: none; top: 80px; left: 15px; width: 70px; height: 30px;}
        </style>
        
        <script type='text/javascript'>
            $("#large").toggle(
                function(){
                    $("#small").show().animate({
                        opacity: 1,
                        top: "-=60px"
                      }, 500);
               },
                function(){
                    $("#small").animate({
                       opacity: -5,
                       top: "+=60px"
                    }, 500);
               }
            );
        </script>
    </body>
</html>

Последний раз редактировалось monolithed, 07.11.2010 в 14:25.
Ответить с цитированием
  #7 (permalink)  
Старый 07.11.2010, 16:39
Профессор
Отправить личное сообщение для exec Посмотреть профиль Найти все сообщения от exec
 
Регистрация: 21.01.2010
Сообщений: 1,022

monolithed, если быстро кликнуть на блок больше одного раза, то будет не совсем приятный эффект.
Ответить с цитированием
  #8 (permalink)  
Старый 08.11.2010, 00:49
Интересующийся
Отправить личное сообщение для dianitka Посмотреть профиль Найти все сообщения от dianitka
 
Регистрация: 06.11.2010
Сообщений: 24

спасибо за ответы. мне больше всего подходит вариант
$(".x").hover(

function() {$(".y").slideDown(5000)}
,
function() {$('.y').fadeOut(5000) }
);

(ведь нужно чтобы появление и растворение происходило не при клике а при наведении на элемент Х) но при таком коде У появляется слева а мне нужно снизу, как у вас.

попробовала

$(".x").hover(

function() {$(".y").show().animate({top: "20px"}, 300)}
,
function() {$('.y').fadeOut(5000) }
);
однако при этом У появляется слишком быстро
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по jquery - как узнать какой тэг? APL Общие вопросы Javascript 7 09.06.2016 15:22
Вопрос по jquery aceton jQuery 0 19.08.2010 05:50
Небольшой вопрос по jQuery deepslam jQuery 10 30.01.2010 00:19
Простой вопрос по jquery Grienders jQuery 1 28.01.2010 14:52
Вопрос про $ в jquery vvsh Общие вопросы Javascript 6 06.09.2009 18:50