TinyMCEのmceSetContentコマンドについて
HTML上でリッチなエディタを提供するjavascriptライブラリTinyMCE
サンプル
http://tinymce.moxiecode.com/example_full.php?example=true
エディタインスタンスに対してAPIが用意されているので、javascript上でさまざまな処理を動的に行うことができる。
そのAPIの中の一つexecCommandを使うと用意されているコマンドを使ってエディタを操作できる。
var html = "<div>hogehoge</div>"; tinyMCE.execCommand('mceSetContent', false, html);
とやったりするとエディタ内にHTMLなどのコンテンツを挿入することができたり。
しかしyoutubeのFLV動画を操作しようとyoutubeの貼り付けタグを挿入してみたところ
src属性がなぜかmce_tsrc属性に変わっちゃってる・・・
ソース追ったところ、2077行目の
if (tinyMCE.isGecko) { if (m == 1) { h = h.replace(/\ssrc=/gi, " mce_tsrc="); h = h.replace(/\shref=/gi, " mce_thref=");
で書き換えられてた。
メソッド名がfixGeckoBaseHREFBugになってたからなんかのバグフィックスなんだろう。
恐らくエディタを使ってデータを送信するときにはtinyMCE.getContent()でエディタインスタンスから本文コンテンツを取得するので、その時にに再度srcに書き換えてるんだろうな。
(推測だけど)
ってかプラグインでmediaってのがあった。。。。
これ使って簡単に動画貼付けできるし。ort