2015-10-15 4 views
0

Я пытаюсь получить ЛЮБОЙ div, который дважды щелкнул, чтобы удалить с помощью jQuery.JQuery удалять не удалять

Я пытаюсь это:

$(this).dblclick(function() { 

    alert('Was Doubled Clicked'); 
    $(this).remove(); 

}); 

Я получаю предупреждение, но ДИВ не были удалены.

Я не добавил div, который был нажат, потому что я хочу, чтобы это было возможно, если возможно?

Почему мой код не делает этого?

+0

Что 'this' в' $ (это) .dblclick ('? Основной пример работает для меня http://jsfiddle.net/j08691/ukjv7r09/ – j08691

ответ

0

Эта версия будет прикрепить событие к телу и продолжайте удалять любой двойной щелчок div.

$(document).ready(function() { 
 
    $('body').on('dblclick', 'div', function(event) { 
 
    event.preventDefault(); 
 
    event.stopPropagation(); 
 
    $(this).remove(); 
 
    }); 
 
    var count = 1; 
 
    $('.addMore').click(function(){ 
 
    $(this).before($('<div>Testing New '+count+'</div>')); 
 
    count++; 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div>Testing 1</div> 
 
<div>Testing 2</div> 
 
<div>Testing 3</div> 
 
<div>Testing 4</div> 
 
<div>Testing 5</div> 
 
<div>Testing 6</div> 
 
<button class="addMore">+DIV</button>

+0

Почему вы используете '.preventDefault()' и '.stopPropagation()'? Что делать, если OP требует, чтобы клики попадали в другие элементы? Кроме того, у divs нет действия по умолчанию. – j08691

+0

Просто привычка моя, чтобы быть уверенным. – MiltoxBeyond

2

$(this) Я считаю, относится к объекту document. Вы этого не хотите. Попробуйте

$("div").dblclick(function() { 
 
    $(this).remove(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="my-div">This is a div</div> 
 

 
<div>This is another div</div>

http://jsfiddle.net/1jpvev24/1/

0

Как вы хотите, чтобы обратиться ко всем дивы вы должны написать следующее:

$('div').dblclick(function() { 
    alert('Was Doubled Clicked'); 
    $(this).remove(); 
}); 
Смежные вопросы