Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   fade маленького div внутри большого div (https://javascript.ru/forum/jquery/28431-fade-malenkogo-div-vnutri-bolshogo-div.html)

kenwo0d 19.05.2012 12:40

fade маленького div внутри большого div
 
Есть 2 дива: 1 большой, 2 маленький, и тот что маленький лежит внутри большого, и при нажатии на большой делаю fadeToggle маленького дива, но когда жму и на маленький див то fadeTottgle срабатует. Как можно зделать, что бы fadeToggle (или еще что-то) срабатывал только при нажатии на большой див, но не на маленький, но маленький лежит внутри большого?

<div class="big" style="width:500px; height:500px; border:1px solid black;">
<div class="little" style="width:50px; height:50px; border:1px solid black"></div>
</div>

jquery:

$('.big').click(function () {
$('.little').fadeToggle();
});

vadim5june 19.05.2012 13:22

Попробуй так
<div class="little" style="width:50px; height:50px; border:1px solid black"
onclick='event.stopPropagation()'></div>

kenwo0d 19.05.2012 13:38

Цитата:

Сообщение от vadim5june (Сообщение 175385)
Попробуй так
<div class="little" style="width:50px; height:50px; border:1px solid black"
onclick='event.stopPropagation()'></div>

Работает но есть недостаток, принажатии на маленький div запускается другая функция, а эта глушит. Блйооо помогите пожалуйста, я уже себе голову поламал. :-E

vadim5june 19.05.2012 13:58

Цитата:

Сообщение от kenwo0d (Сообщение 175387)
Работает но есть недостаток, принажатии на маленький div запускается другая функция, а эта глушит.

если без jquery то другую функцию запустить раньше-

onclick='myFunc();event.stopPropagation()'

kenwo0d 19.05.2012 14:00

Цитата:

Сообщение от vadim5june (Сообщение 175389)
если без jquery то другую функцию запустить раньше-

onclick='myFunc();event.stopPropagation()'

c jquery это както можно сделать?

vadim5june 19.05.2012 14:04

Цитата:

Сообщение от kenwo0d (Сообщение 175390)
c jquery это както можно сделать?

внутрь функции click на маленьком диве все это поставить-которую вы не написали

kenwo0d 19.05.2012 14:20

Маленький div это событие onclick
$('.little').onclick(function () {
  event.stopPropagation();
  //дальше код
});


Так сделать?

vadim5june 19.05.2012 14:24

Цитата:

Сообщение от kenwo0d (Сообщение 175394)
Маленький div это событие onclick
$('.little').onclick(function () {
  event.stopPropagation();
  //дальше код
});


Так сделать?

пример из руководства jquery

$("p").click(function(event){
event.stopPropagation();
// do something
});
-----------
event-не забудьте
не onclick а click

kenwo0d 19.05.2012 14:28

Цитата:

Сообщение от vadim5june (Сообщение 175395)
пример из руководства jquery

$("p").click(function(event){
event.stopPropagation();
// do something
});
-----------
event-не забудьте
не onclick а click

Не onclick, а click! Точно... Спасибо большое, работает...

kenwo0d 19.05.2012 14:58

event.stopPropagation не работает, через:
$('div').live('click', function () {
event.stopPropagation();
})

А без live() работает супер, но нужно через live так как подгружается контент... Как-то можно? ааа....


Часовой пояс GMT +3, время: 08:07.