(五)CodeMirror-htmlmixedにscriptスクリプトが含まれていることについて
1271 ワード
最近、次のような問題が見つかりました.
作成されたmodeタイプがhtmlmixedであり、コンテンツにjavascriptスクリプトが含まれており、閉パッケージである場合はすぐに実行されます.
コンテンツがJQuery関数を使用する場合.html()をDOMに挿入してcodeMirrorオブジェクトを作成します.
このとき、JSがエラーを報告した場合、codeMirrorオブジェクトの作成も中断される.
解決方法:
elemを使用できます.text()メソッドでコンテンツを挿入すると、間違ったJSも実行されず、後の作成がスムーズに行えます
作成されたmodeタイプがhtmlmixedであり、コンテンツにjavascriptスクリプトが含まれており、閉パッケージである場合はすぐに実行されます.
コンテンツがJQuery関数を使用する場合.html()をDOMに挿入してcodeMirrorオブジェクトを作成します.
このとき、JSがエラーを報告した場合、codeMirrorオブジェクトの作成も中断される.
解決方法:
elemを使用できます.text()メソッドでコンテンツを挿入すると、間違ったJSも実行されず、後の作成がスムーズに行えます
1 var elem = $('#code');
2 var str = ''<div class="mod-addToScreen" id="test" ></div><script type="text/javascript">(fuction(){ // ..})();</script>"
3
4 // elem.html(str);
5 elem.text(str); //
6
7 var editor = CodeMirror.fromTextArea(elem, {mode: {name:'htmlmixed'});