jQuery   发布时间:2022-04-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了在TinyMCE插件中使用jQuery大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_696_2@
我正在为TinymCE编写一个插件,我想使用jQuery对正在编辑的文档进行一些操作.

我不是在寻找一种方法来使用TinymCE和jQuery(例如选择器上的.Tinymce()方法),我知道有解决方案.

基本上我需要在TinymCE生成的iframe中包含jQuery.

Tinymce.dom.ScriptLoader似乎加载在父窗口中,而不是iframe中,所以这不是一个选项.

到目前为止我尝试过的:

>通过父级和插件上下文中的ScriptLoader加载jquery
(后者完全没有效果,前者在错误的上下文中加载它)
>访问window.parent.$,这是未定义的(即使它是
在父窗口中加载)
> RTFM’ing和谷歌搜索,但没有相关的点击.如果插件打开一个对话框,那么可以选择加载其他javascript,但这也不是我需要的.

有人在TinymCE插件中使用jQuery吗?怎么样?

更新/解决

感谢Thariama的建议,我能够让它发挥作用.您可以使用显式的Tinymce.get()来获取编辑器,也可以使用传递给插件的init()方法的’ed’实例.然而事实证明,在初始阶段,你不能(还)以这种方式访问​​父节点.您可以在特定的处理程序中执行此操作.

例如.

(function($) {
  Tinymce.create('Tinymce.plugins.soSamplePlugin',{
    init: function(ed,url) {
        $= ed.getWin().parent.jQuery; // <- WON'T WORK!

        ed.addCommand('sOCMd',function(ui,v) {
            if(e = ed.SELEction.getNode()) {
                $= ed.getWin().parent.jQuery; // <- WORKS!
                $(E).wrap('<div class="sample" />');
                ed.execCommand("mceRepaint");
            }
        });
        ed.addButton('SO',{
           title: 'title',cmd: 'sOCMd',image: 'somebutton.png'
        });
    },geTinfo: function() {
        return {
            longname: 'Example Plugin',author: 'Ivo',authorurl: 'http://vanderwijk.info/',infourl: 'http://vanderwijk.info',version: '1.0'
        };
    }
  });
  Tinymce.PluginManager.add('so',Tinymce.plugins.soSamplePlugin);
})($);
@H_696_2@

解决方法

这很容易

var editor = Tinymce.get('your_editor_id');

jQuery是可以使用的

editor.getWin().parent.jQuery
@H_696_2@ @H_696_2@
@H_696_2@
@H_696_2@

大佬总结

以上是大佬教程为你收集整理的在TinyMCE插件中使用jQuery全部内容,希望文章能够帮你解决在TinyMCE插件中使用jQuery所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。