デモ。コンソールを見る
Scenes.xml がセクションのリストであると仮定しましょう
<sections>
<section>
<div...
</section>
...
</sections>
定義済みのpreload
隠しブロックです。この xml を $.ajax (もちろん dataType: "xml") でロードし、html を取得しようとしています:
$(xmlData).find("section").each(function() {
console.log(preload.empty().append(this).html())
})
つまり、7-10以外の場所で完璧に機能します。それはスローします:
DOM Exception: HIERARCHY_REQUEST_ERR (3)
in jquery.js (1.7.2) on line 6497
PS もちろん、各セクションをCDATAでラップし、text() を使用して html を取得できます。ただし、各セクションは有効な xml または html であるため、この回避策は避けたいと考えています。