(五)CodeMirror-htmlmixedにscriptスクリプトが含まれていることについて

1271 ワード

最近、次のような問題が見つかりました.
作成された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'});