Je crée une application avec un éditeur TinyMCE intégré à l'intérieur. Je souhaite que les commandes de mon application se mettent à jour lorsque la sélection à l'intérieur de l'éditeur TinyMCE change, de sorte que la police, la taille et les menus de couleur montrent la police, la taille et la couleur de la sélection. Font et couleur fonctionne bien, mais je ne peux pas comprendre comment obtenir la couleur. Voici le code que j'utilise: mais Quand je marche à travers cela dans mon débogueur, couleur === faux code>. Comment puis-je obtenir la couleur de premier plan du texte sélectionné ou le texte au point d'insertion dans TinyMCE? P> Tiny_mce_Prototype_src .js code> Je vois: p> t.editorCommands.querycommandvalue (c); code> retours faux. p> p>
4 Réponses :
Cela fonctionnera si votre sélection est complètement à l'intérieur du texte coloré
Jusqu'à présent, cela semble prometteur! Tester plus loin maintenant et acceptera si cela fonctionne!
Ceci presque i> fonctionne. Le problème est, sur HTML comme test strong> p> p> code> Il renvoie " " code> Je suppose parce que le code> n'a pas de couleur CSS, le code> fait ...
J'essaierais de le faire d'une autre manière (n'a pas vérifié) - Prendre le style calculé:
myTinyMCESettings.handle_node_change_callback = function(editor_id,node,undo_index,undo_levels,visual_aid,any_selection){
var editor = tinyMCE.get(editor_id);
var color = tinyMCE.DOM.getStyle(node, 'color', true); // computes current color
selectionChanged(editor,!any_selection);
};
Désolé, objet TinyMCE n'a pas de méthode 'getStyle' code>
@Josh Désolé, manqué un mot :) Cochez la version mise à jour. Il calcule le style de courant au lieu du style de lecture de CSS ou d'un attribut de style.
Ceci presque i> fonctionne. Le problème est, sur HTML comme test strong> p> p> code> Il renvoie
@Josh and getStyle est censé obtenir la couleur basée sur la couleur du parent. Est-ce que ça? Sinon, écrivez-le comme Tinymce.dom.gettyle (nœud, «Couleur», vrai) PS: Je suis désolé pour tant de mises à jour. Je suis fan de CKeditor :) " " code> Je suppose parce que le code> n'a pas de couleur CSS, le code> fait ...
Je ne sais pas si vous avez résolu cela, mais ce que j'ai fait était: où ed est la variable de votre éditeur TinyMCE. P> P>
Ceci fera
tinymce.get('my_editor_id').getContentAreaContainer().style.color= "red"
Voulez-vous obtenir la couleur de la sélection ou la couleur choisie sur le panneau avec des instruments?
Voulez-vous la couleur de fond ou la couleur du texte?
@CHeery je veux la couleur du texte sélectionné; Je cache la barre d'outils TinyMCE.
@Thariama je veux la couleur du texte.