2012-06-20 1 views
3

У меня есть следующий код JQuery, который не работает совсем правильно при попытке реализовать привязки с на event.`JQuery mouseon/MouseOut или парить в «включено» события связывания

$(".editable_template_region").on({"mouseover":function(){ 
     $('<a href="javascript:void(0)" class="hoverItTemplate">click to edit</a>').appendTo($(this)); 

    }, "mouseout" : function() { 
     $(this).find(".hoverItTemplate").remove(); 
    }});` 

I не думайте, что этот код прав, потому что это приводит к тому, что события «вспыхивают» или циклически повторяются снова и снова. Таким образом, мой класс зависания включается и выключается.

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

 $(".editable_template_region").hover(function() { 
     $('<a href="javascript:void(0)" class="hoverItTemplate">click to edit</a>').appendTo($(this)); 
    }, function() { 
     $(this).find(".hoverItTemplate").remove(); 
    });  

Заранее спасибо.

ответ

3

Попробуйте это:

$(".editable_template_region").on({ 
    mouseenter: function() { 
     $('<a href="javascript:void(0)" class="hoverItTemplate">click to edit</a>').appendTo($(this)); 
    }, 
    mouseleave: function() { 
     $(this).find(".hoverItTemplate").remove(); 
    } 
});​ 

Я не уверен, что вы подразумеваете под «лучше связывания», но выше, или ваш план .hover() должны оба работают.

+0

Работает так, как ожидалось. Спасибо за пример. –