2015-08-04 8 views
1

У меня есть этот скриптсрабатывают только один раз в документе нажмите

$(document).on("click", "#ocs", function(){ 
    alert("ASdasd"); 
}); 

но по неизвестным причинам, он вызовет щелчок в два раза. Я могу, конечно, использовать

$("#ocs").unbind().click(function(){ 
    alert("ASdasd"); 
}); 

, чтобы сделать его не запускать два раза, но для моих требований я не использую

$("#ocs").unbind().click(function(){ 

поэтому любые идеи, как сделать отвязать() или не сделать триггер дважды, используя

$(document).on("click", "selector", function(){ 

?

+1

Можете ли вы показать HTML? Он не должен запускаться дважды в первую очередь – AmmarCSE

+0

Его система, очень тяжелый html. –

+3

Ну, его либо обработчик прикреплен дважды, либо у вас есть два элемента с одинаковым идентификатором – AmmarCSE

ответ

8

вы можете использовать one для этого

$(document).one("click", "#ocs", function(){ 
    alert("ASdasd"); 
}); 
1

Вы можете сделать это так:

$('#abc').bind('click', function() { 
    $(this).unbind('click'); 
    alert('Clicked and Unbind'); 

});

Связывание позволяет вам повторно связать событие click позже, если это необходимо.

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