Mon objectif principal est d'obtenir le contenu de l'éditeur lorsque celui-ci change et de mettre à jour un aperçu en direct. Pour cela, je dois ajouter un écouteur d'événement à l'éditeur. BTW, j'ai deux éditeur dans la même page et la page est chargée via ajax.
Revenons maintenant à mon problème. Je n'arrive pas à accéder à l'instance des éditeurs tinyMCE. Je peux console.log()
mais obtenir un résultat vide lorsque j'essaie de les stringifier .
Ci-dessous, le résultat de console.log(tinymce.editors)
.
Donc, chaque fois que j'essaie d'accéder aux éditeurs en utilisant tinymce.editors.contentleft
, tinymce.editors['contentleft']
, tinymce.get('contentleft')
ou tinymce.EditorManager.get('contentleft')
dans tous ces cas, je reçois undefined
ou null
Travailler plus que quelques jours à ce sujet. J'apprécierais une direction appropriée bientôt.
Si vous attendez l'événement SetupEditor
, vous pourrez accéder aux éditeurs:
add_action( 'admin_print_footer_scripts', function () {
?>
<script type="text/javascript">
jQuery(function ($) {
if (typeof tinymce !== 'undefined') {
tinymce.on('SetupEditor', function (editor) {
if (editor.id === 'contentLeft') {
// Could use new 'input' event instead.
editor.on('change keyup paste', function (event) {
console.log('content=%s', this.getContent());
});
}
});
}
});
</script>
<?php
} );