Question

(Im en utilisant la fonction de before() jquery pour ajouter un nouvel élément de <p> à une couche de div.

$('#AddParagraphButton').click(function() {
    $('#TheLayer').before('<p contentEditable='true'>Some text...</p>');    
});


ici, j'ai fonction set keypress insérer tag <br>.

$('p').keypress(function(e){
    if(e.which == 13){
       e.preventDefault();  
       document.execCommand('insertHTML', false, '<br/>');
    }
});


cette fin de travaux (inserts de balise br) jusqu'à ce que la fonction append est appelée et une nouvelle <p> est ajouté. Comment puis-je obtenir livequery délier keypress événement et se lier à nouveau?


EDIT: les balises <p> ont le contentEditable propriété. Im faire parce que les balises <br> sont enveloppés dans divs et je veux que <br> balises

Était-ce utile?

La solution

Avez-vous pensé à utiliser le construit en live() fonctionnalité? ..

  

Description:. Joindre un gestionnaire à l'événement pour tous les éléments qui correspondent au sélecteur de courant, maintenant et dans l'avenir

$('p').live("keypress", function(e){
    e.preventDefault();
      if(e.which == 13){
         document.execCommand('insertHTML', false, '<br/>');
    }
});
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top