Нет проблем. Предполагая, что у вас есть только один узел в вашем редакторе, это:
class_string = tinyMCE.activeEditor.getBody().firstChild.class;
class_string_array = class_string.split(" ");
for (i=0; i < class_string_array.length; i++){
if (class_string_array[i].search("border") !== -1) {
alert("class found!");
class_string_array[i] = "new_class";
class_string = class_string_array.join(" ");
tinyMCE.activeEditor.getBody().firstChild.setAttribute('class',class_string);
break;
}
}
Гораздо проще использовать jQuery:
node = tinyMCE.activeEditor.getBody().firstChild;
if ( $(node).hasClass("border_xxx") ){ // need to check for explicit className
$(node).removeClass("border_xxx");
$(node).addClass("new_class");
}
РЕДАКТИРОВАТЬ: Если вы хотите проверить для каждого узла внутри контента, вам нужно рекурсивно пройти через body-domtree и проверить для каждого узла:
function getTextNodesValues(tinymce,node) {
if ( $(node).hasClass("border_xxx") ){ // need to check explicit className
$(node).removeClass("border_xxx");
$(node).addClass("new_class");
}
for (var i=0; i<node.childNodes.length; i++) {
el = node.childNodes[i];
if ( $(node).hasClass("border_xxx") ){ // need to check explicit className
$(node).removeClass("border_xxx");
$(node).addClass("new_class");
}
if (el.childNodes.length > 0) getTextNodesValues(tinymce,el);
}
}
getTextNodesValues(tinymce, getTextNodesValues(tinymce,node) );
Должны получить все классы внутри редактора:
tinyMCE.activeEditor.dom.getClasses();
но заменить их этой информацией нелегко.