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(); }); |
Попробуй так
<div class="little" style="width:50px; height:50px; border:1px solid black" onclick='event.stopPropagation()'></div> |
Цитата:
|
Цитата:
onclick='myFunc();event.stopPropagation()' |
Цитата:
|
Цитата:
|
Маленький div это событие onclick
$('.little').onclick(function () { event.stopPropagation(); //дальше код }); Так сделать? |
Цитата:
$("p").click(function(event){ event.stopPropagation(); // do something }); ----------- event-не забудьте не onclick а click |
Цитата:
|
event.stopPropagation не работает, через:
$('div').live('click', function () { event.stopPropagation(); }) А без live() работает супер, но нужно через live так как подгружается контент... Как-то можно? ааа.... |
если так написать-не будет разве
$('div').live('click', function (event) {... |
Цитата:
Таким образом: $('.big').delegate(this, 'click', function () { event.stopPropagation(); }); |
Ага фиг там, а не решил, delegate не работает при подогружаемом контенте... и через live() неработает, подскажет кто? или я так понял это жопа ?
|
Цитата:
|
А как добавлять событие динамически после добавления элемента, какойто простой пример можно? Просто 2 день пробую jquery...
|
без jquery просто addEventListener
или кроссбраузерно функция addEvent function addEvent(elem, evType, fn) { if (elem.addEventListener) { elem.addEventListener(evType, fn, false); } else if (elem.attachEvent) { elem.attachEvent('on' + evType, fn) } else { elem['on' + evType] = fn } } это где то здесь 10 лучших функций javascript я взял |
Цитата:
В live() можно использовать stopPropagation() таким образом. Если писать так, то НЕ работает: $('.big').live('click', function (event) { event.stopPropagation(); }); А если написать так, то работает: $('.big').live('click', function (e) { e.stopPropagation(); }); Нарыл тут: http://stackoverflow.com/questions/3...th-live-method |
Потестируй теперь-может на этот раз получилось
|
Часовой пояс GMT +3, время: 04:38. |