2011-10-27 7 views

答えて

1

あなたは直接することはできません。 Rangy CSSクラスのアプライアーはDOMでしか動作しません。

一時的な要素にHTML文字列を追加し、CSSクラスを適用してもう一度削除することもできます。

ライブデモ:http://jsfiddle.net/Ta3ta/

コード:

function applyCssClassToHtml(cssClass, html) { 
    rangy.init(); 
    var cssClassApplier = rangy.createCssClassApplier(cssClass); 
    var div = document.createElement("div"); 
    div.innerHTML = html; 
    document.body.appendChild(div); 
    var range = rangy.createRange(); 
    range.selectNodeContents(div); 
    cssClassApplier.applyToRange(range); 
    range.detach(); 
    document.body.removeChild(div); 
    return div.innerHTML; 
} 

var html = applyCssClassToHtml("someClass", "Hello <b>world</b>"); 
関連する問題