2010-12-04 39 views
0

Bonjour sous une forme avec un textarea avec id "ckeditor_input"événements Jquery sur CKeditor

$("#ckeditor_input").ckeditor(); 

$("#ckeditor_input").html(); // can get the value 

("#ckeditor_input").click/blur/keydown/keypressed(

    function(){ 
     alert("OK"); 
    } 
); //doesn't work! 

le problème est ckeditor! Si je ne démarre pas une instance de ckeditor sur le textarea tous les événements fonctionnent bien! Quelle est la bonne façon d'obtenir des événements sur une instance de ckeditor?

Merci

Répondre

1

CKEditor utilise une iframe ... très ennuyeux pour les événements jQuery. Vous pouvez essayer:

$($('#parent-element>iframe').get(0).contentWindow.document).live('click',function() { ... }); 

Je ne l'ai pas testé, donc pas tout à fait sûr si cela va fonctionner. Mais je suis sûr que c'est le point de départ de la solution. Faites-moi savoir comment ça se passe, et si cela ne fonctionne pas, je vais essayer de trouver quel est le problème.

:: Modifier (basé sur le commentaire)

$(CKEDITOR.instances.desc_product).click(function() { ... }); 

Je pense que cela devrait le faire. Mais lancez-le seulement après que CKEditor a été chargé correctement.

+0

pas ... Je me - $ ("# add_news> iframe") get (0) est undefined- Si elle aide je trouve cela et il fonctionne: CKEDITOR.instances.desc_product.on. ('click', function() {alert ('onblur 123');}); mais j'ai besoin de "pressé" pour travailler (quand l'utilisateur tape dedans) –

+0

Ah ha. Voir ma modification. –