2012-03-29 16 views
5

皆さん、のTinyMCE:Googleドキュメントからコピー&ペースト

私の会社は、次のワークフローをサポートする必要があります: を - ( - 太字/斜体、だけでなく、ハイパーリンクの単純なフォーマットで)Googleドキュメントで作成されたばかりの豊富なコンテンツがあります - そのコンテンツは、TinyMCEを使用する内部CMSに貼り付けられます。 。

問題:中のものを貼り付けたときにすべての書式が失われる

はすでに「ペーストWordから」プラグインを試してみました - それは動作しません。

お知らせください。ありがとうございました!

更新: Google Chromeに問題を絞り込んだ。 Firefoxは正常に動作します。私もpaste_pre_processing()コールバックを使用しました。データがそこに入る前に破損しています。

+0

+1良い質問ですが、簡単なものではありません。エディタに貼り付けるものを見せることができますか?どのようにしてタイマーを設定しましたか? – Thariama

+0

Googleドキュメントから貼り付けるときにも問題があります。場合によっては、コンテンツを貼り付けるときや、DBに投稿するときにコンテンツが「削除」されることがあります。私はちょうど今いくつかをテストし、それは正常に動作しているようだが、それは問題である、信頼性が低いと感じる。これまでの運は? – Sam

答えて

3

私はTinyMCEにペーストプラグインをあきらめてしまいました。代わりに、TinyMCEの文書化されていないvalid_stylesプロパティを使用しました。これは私のシナリオの問題を解決しました。ここでは、次の設定スニペットを使用しました。

valid_elements: "a[href|title|target],del,b,strong,del,i,blockquote,p,br,em,ul,li,ol,span[style]", 
valid_styles : { '*' : 'font-weight,font-style,text-decoration' }, 
1

問題は多少複雑な問題です。

まず、tinymceが無効と認識するタグとタグ属性を削除しないようにする必要があります(tinymce設定オプションvalid_elementsvalid_childrenを詳しく見てください)。

第2に、貼り付けプロセスの独自の処理を実装する必要があります。 これには3通りの方法があります。最も時間のかかるオプションは、独自のカスタムペーストプラグインを作成し、指定したプラグインを置き換えることです。その他のオプションは、ペーストプラグインを設定し、ペーストされたコンテンツと対話して変更する独自の関数を定義する方法です。 paste_pre_processingpaste_post_processingというセッティングがここに行く方法です。