Je veux vérifier le nœud du texte sélectionné. Si c'est span, une autre fonction éditera les classes qui lui sont appliquées. Si c'est le même que le nœud parent, alors le code encapsulera la sélection dans span et définira ses styles. Le problème ici que je suis confronté est, comment déterminer, si l'utilisateur a sélectionné le texte entier dans l'éditeur ou seulement du texte. Si l'utilisateur sélectionne le texte entier, je souhaite appliquer les styles au noeud parent au lieu d'y ajouter une nouvelle plage et des styles. Voici mon code -Comment trouver si l'utilisateur a sélectionné tout le texte ou une partie de texte dans minuscule mce
var ed=tinyMCE.getInstanceById('textAreaId');
var sel = ed.selection.getContent();
if(trim(sel)!="") {
//get the node of the selection
var thisNode=tinyMCE.activeEditor.selection.getStart().nodeName;
ed_Property=propertyName;
ed_PropertyVal=propertyValue;
//get the root node inside editor
var parentNode=tinyMCE.activeEditor.getBody().firstChild.nodeName;
if(thisNode=="SPAN") {
nodeclass=$(tinyMCE.activeEditor.selection.getNode()).attr('class');
//edit span properties
editSpanProperties(nodeclass,propertyName,propertyValue);
}
else if(thisNode==parentNode) {
var elmType="span";
var Spanid1=createSpanId(targetToStyle,elmType);
Spanid=targetToStyle+"_"+elmType+"_"+Spanid1;
var strStyle=ed_Property+":"+ed_PropertyVal;
//wrap selection in a span
sel = "<span id='"+Spanid+"' style='"+strStyle+"'>" + sel + "</span>";
//set content
ed.selection.setContent(sel);
//retain the selection
ed.selection.select(ed.dom.select('#'+Spanid)[0],false);
}
else {
//here I need to check if user has selected whole text and set properties
setStylesOnEditor(templateSection,propertyName,propertyValue);
}//if ends
}
else if(trim(sel)=="") {
alert('No text selected');
}