いいえ、ホワイトリストはハードコーディングされており、調整できません。ただし、class
属性はホワイトリストにあり、保持する必要があります。おそらくstyle
属性のことですか? カスタマイズされた動作が必要な場合は、別のソリューションを使用する必要があります ( Firefox 12 で HTML ドキュメントを解析できるDOMParserなど)。
古いバージョンの Firefox に関しては、そこで XHTML データを解析できますDOMParser
。実際に HTML を使用している場合、ドキュメントにすぐに挿入せずに HTML を解析する方法 (さまざまなセキュリティ上の問題が発生する可能性があります) を 1 つだけ知っています: range.createContextualFragment()。そのための HTML ドキュメントが必要です。ない場合は、非表示の<iframe>
読み込みabout:blank
でも同様です。仕組みは次のとおりです。
// Get the HTML document
var doc = document.getElementById("dummyFrame").contentDocument;
// Parse data
var fragment = doc.createRange().createContextualFragment(htmlData);
// Sanitize it
sanitizeData(fragment);
ここでのデータのサニタイズは、あなた自身の責任です。上記でリンクした Mozilla のホワイトリストに基づいてサニタイズを行いたいと思われるかもしれません。そのリストにないすべてのタグと属性を削除し、リンクも確認してください。属性は特殊なケースです。以前は安全ではありませんでしたが、Web でサポートされstyle
なくなったため、IMHO は指定されなくなりました。-moz-binding