Показать сообщение отдельно
  #10 (permalink)  
Старый 13.11.2011, 14:35
Аватар для Андрей38
Профессор
Отправить личное сообщение для Андрей38 Посмотреть профиль Найти все сообщения от Андрей38
 
Регистрация: 11.12.2010
Сообщений: 261

Сообщение от DjDiablo Посмотреть сообщение
Повозился сегодня немного, забавно но мне не удалось добится вменяемой работы с вложенными элементами от mouseOut. При переходе между вложенными элементами, событие упорно срабатывает.Блин обидно .
Пришлось писать костыль проверяющий действительно ли мы вышли за границы контейнера.

<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>

<style>

#list {
	position: relative;
	width:40%;
	height:120px;
	margin:0 15px;
	background-color:#D6EDFC;
	float:left;
	overflow:hidden;
	display:none;
//	display:block;
}
</style>

</head>
<body>
<div id="conteiner">
<!-- заголовок и меню, это два независимыз обьекта в контейнере(невложены один в другой) -->
<div id="caption">я заголовок</div>

   <div id="list" >
	<ul>
	<li> строка1</li>
	<li> строка2</li>
	<li> строка3</li>
	</ul>
   </div>
</div>

<script>
$(document).ready(function(){
   $("#caption").click(function(){
	  $("#list").show();	  	  	
	  $("#caption").hide();

          // событие mouse out
          $("#list").mouseout(function(f){

           // найдём list один раз, сбережём время
           var list=$(this);

 	       // позволим выполнить действие если мышь действительно за границами блока
	       if (f.pageX>list.width() || f.pageY>list.height() || 
		   f.pageX<list.offset().left || f.pageY<list.offset().top){	     		              
                        // скрываем меню
                        $(list).hide();

                         // показываем заголовок
                         $("#caption").show();

                          // отвяжем событие, чтобы несрабатывало по напрасну
                          $(list).unbind("mouseout");
		}
          });

   });

		
});

</script>

</body>
И я сделал проверку по координате, а то моусеоут че-то не работало.
Но код у Вас полный ,с бинд.
Спасибо,пригодилось
__________________
http://www.youtube.com/watch?feature...&v=cz0uN1ZNuM0
История не в теории ,а по факту
Ответить с цитированием