tinyMCEに問題があります。に入れ<script type="text/javascript" src="/scripts/tiny_mce/tiny_mce.js">
て<head>
、の前にinitコードを置くと、正常<textarea class="tinyMceEditor">
に動作します。initコードは次のようになります。
tinyMCE.init({
mode : "specific_textareas",
editor_selector : "tinyMceEditor",
plugins : "inlinepopups,advlink",
convert_urls : false,
theme : "advanced",
theme_advanced_buttons1 : "link,unlink",
width: "602",
height: "175",
theme_advanced_statusbar_location : "none"});
しかし今、私はtiny_mce.jsのロードを延期したいのですが、ユーザーが最初にボタンをクリックすると、tiny_mce.jsがロードされ、にを追加し<textarea class="tinyMceEditor">
て<body>
、前のコードでinit作業を行いますが、これは時間、それはtinyMCEエディタを初期化せず、それは表示するだけです<textarea class="tinyMceEditor">
グーグル、しかしこれに関連するものは何も見つかりません、誰かがこの問題に遭遇しましたか?
任意の提案をいただければ幸いです。
Chrome Web開発ツールを調べたところ、tinymce.jsを動的にロードすると、en.js、editor_template.js、editor_plugin.jsなどの必要な他のjsがロードされないことがわかりました。これらのjsファイルを動的にロードするように追加しても、tinymceを初期化することはできません。
<textarea
あなたの助けに感謝します、私はfirebugで見ました、そして私は追加する前にtinymce.jsをロードします<body>
、そして私は追加し<textarea>
、そしてtinymceをしますinit()
、私はjsファイルを動的にロードするためにLazyLoad(jQueryプラグイン)を使用しています。
これが私がしたことです
if(typeof TinyMCE == "undefined"){
//dynamically load the tinymce.js
LazyLoad(['tinymce.js'],function(){
//callback function, called after tinymce is loaded
$('body').append('<textarea class="TinyMceEditor"/>');
tinyMCE.init({init settings});
});
}
tinymce.jsを動的にロードしない場合は、<script>
タグを<head>
挿入するだけでtinyMCEを初期化できますが、tinymce.jsを動的にロードすると機能しません。これで何か考えはありますか?