2012-07-02 17 views
6

Acorde a los documentos de Aloha Editor puede escuchar el evento "aloha-smart-content-changed" para obtener ayuda, por ejemplo, guardando los datos en cualquier mecanismo de persistencia que esté utilizando. Aquí hay un ejemplo de lo que estoy tratando de hacer:Escuchando el editor Aloha "aloha-smart-content-changed" ¿Evento?

<html> 
    <head> 
    <title>Aloha Event Testing</title> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 
    <script src="http://cdn.aloha-editor.org/current/lib/aloha.js" data-aloha-plugins="common/format, common/list, common/link, common/highlighteditables"></script> 
    <link href="http://cdn.aloha-editor.org/current/css/aloha.css" rel="stylesheet" type="text/css" /> 
    <script type="text/javascript"> 
     Aloha.ready(function() { 
     var $ = Aloha.jQuery; 
     $('.editable').aloha(); 
     }); 
     $(document).ready(function() { 
     $('.editable').bind('aloha-smart-content-changed', function() { 
      console.log('Aloha smart event handled.'); 
     }); 
     }); 
    </script> 
    </head> 
    <body> 
    <div class="editable"></div> 
    </body> 
</html> 

Pero el controlador nunca se dispara. ¿Alguien que haya trabajado con Aloha sepa cómo escuchar adecuadamente el evento?

Respuesta

8

Guau, la documentación sobre esto fue bastante pobre. Pero creo que lo hice funcionar. Parece que enlaza los manejadores de eventos dentro del método Aloha.ready() y con el objeto Aloha.

Aloha.ready(function() { 
     var $ = Aloha.jQuery; 
     $('.editable').aloha(); 

    Aloha.bind('aloha-smart-content-changed', function(event, editable) { 
      console.log('Aloha smart event handled.'); 
     });   
}); 

Encontrado un poco más información sobre ella here y aquí es donde he encontrado un ejemplo de un event being bound.

también a prueba en este jsfiddle here

Espero que ayude

+1

perfecto. Buen hallazgo, Amin, gracias! – mjswensen

+0

alguna idea sobre cómo obtener el contenido real? :/ – Populus

+0

@Populus Pruebe 'Aloha.getActiveEditable(). GetContents();'. – mjswensen

Cuestiones relacionadas