2014-09-05 2 views
0

Я хотел бы получить только элементы зависшего DOM, но когда я начал парить, он также запускает родительский дом таким образом;Получите элементы div в div при наведении указателя мыши

<div class="testclass"> 
    <div class="divEditmsg">Click to Edit</div> 
    <div class="testclass"> 
     <div class="divEditmsg">Click to Edit</div> 
     <div class="testclass"> 
      <div class="divEditmsg">Click to Edit</div> 
     </div> 
    </div> 
</div> 

Вот мой код:

$(document).on({ 
    mouseenter: function() { 
     $(this).append('<div class="divEditmsg">Click to Edit</div>'); 
    }, 
    mouseleave: function() { 
     $('.divEditmsg').remove(); 
    } 
}, ".testclass"); 
+0

Вызов 'e.stopPropagation()' в вашем мышином центре. http://jsfiddle.net/j03t1z3u/ – Jack

+0

Спасибо @JackPattishallJr. Это работает. Но когда я навевал родителя из дочернего приложения, он не работает. –

+0

Эй, @JestherBangculetaBas, какой прецедент? У вас есть вложенные элементы, каждый из которых может вызывать 'append'? – Jack

ответ

0

Комментарий является правильным, но неполным.

Почему вы связываете это событие с объектом $(document)? Почему бы не привязать непосредственно к div, который вы хотите применить. Не совсем ясно, что вы пытаетесь сделать здесь, но вы хотите привязать к самому большому элементу ребенка. Затем, если он возится с другими обработчиками событий, используйте event.stopPropagation, чтобы остановить пузырьки событий.

Ваша основная проблема, хотя, я считаю, в этом случае - это то, что вы выбираете для событий мыши.

+0

Я размышляю здесь, но я думаю, что это делегирование событий (сродни устаревшей привязке $ .live()). Тем не менее, общий родительский элемент или даже document.body. – Jack

+0

«event.stopPropagation» работает хорошо, но когда я навевал родителя на дочерний элемент, приложение больше не работает. Я использовал '$ (document)', потому что 'testclass divs' можно добавить динамически. –

+1

Непонятно, что вы хотите. Вкратце, что вы пытаетесь сделать? – user1167442

Смежные вопросы