【CKEditor】修改超链接target默认为_blank





    默认情况下,CKEditor插入超链接的Target为不设置,即点击该超链接以后会在当前窗口打开。现需要将其默认改为在新窗口打开,即修改Target值默认为_blank。好在CKEditor提供了弹出窗口的修改支持,修改后的效果如下

    CKEditor 超链接默认为_blank

    CKEditor 超链接默认为_blank

    使用的js代码为:

    CKEDITOR.on( 'dialogDefinition', function( ev )
    {
       // Take the dialog name and its definition from the event
       // data.
       var dialogName = ev.data.name;
       var dialogDefinition = ev.data.definition;
    
       // Check if the definition is from the dialog we are
       // interested on (the "Link" dialog).
       if ( dialogName == 'link' )
       {
          // Get a reference to the "Target" tab.
          var targetTab = dialogDefinition.getContents( 'target' );
    
          // Set the default value for the target field.
          var targetField = targetTab.get( 'linkTargetType' );
          targetField['default'] = '_blank';
       }
    });

    此代码在页面js部分加入,如不懂可参考ckeditor/_samples/api_dialog.html

    p.s.有同学反应说这样设置还是无效,a标签里面没有增加target属性,这边更新了一下ckeditor到3.6.2版本就解决问题了,所以各位同学看一下自己的ckeditor版本。



    本博客所有文章如无特别注明均为原创。
    复制或转载请以超链接形式注明转自枫芸志,原文地址《【CKEditor】修改超链接target默认为_blank
    标签:
    分享:

已经有7 条评论抢在你前面了~

  1. 沙发
    蚂蚁 2011年7月1日 下午6:01

    你好,我想给我的超链接默认自动加一个class和rel=””属性,请问在哪里修改?

    [回复]

    晴枫

    晴枫 回复:

    @蚂蚁, 我觉得跟加target应该类似的,你参考着改改看

    [回复]

  2. 板凳
    noyobo 2011年6月17日 上午10:42

    嗯. 我看到了. 因为现在的项目需要. 不能写在页面中.如果修改 源码 link.js 中的
    label:a.lang.common.target,’default’:’notSet’ 为
    label:a.lang.common.target,’default’:’_blank’
    已经把 超链接的 目标默认为新窗口了.
    可是插入的 链接 a 却没有 target 属性. 想请教你修改源码怎么搞.

    [回复]

    晴枫

    晴枫 回复:

    @noyobo, 其实你可以直接把上面的代码加到某个源码文件里就行了

    [回复]

    noyobo 回复:

    @晴枫, 好的.谢谢了. 我再去研究一下.

    [回复]

  3. 地板
    noyobo 2011年6月16日 下午6:38

    楼主, 你这个方法修改的是哪个文件. 版本是?

    我也想设置这个. 可是没找到你说的 CKEDITOR.on

    [回复]

    晴枫

    晴枫 回复:

    @noyobo, ckeditor v3.2.1
    上面的代码是在网页的js中直接调用的,不是改ckeditor源码

    [回复]

无觅相关文章插件,快速提升流量