【CKEditor】修改超链接target默认为_blank
默认情况下,CKEditor插入超链接的Target为不设置,即点击该超链接以后会在当前窗口打开。现需要将其默认改为在新窗口打开,即修改Target值默认为_blank。好在CKEditor提供了弹出窗口的修改支持,修改后的效果如下
使用的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
你好,我想给我的超链接默认自动加一个class和rel=””属性,请问在哪里修改?
[回复]
晴枫 7月 5th, 2011 下午2:51 回复:
@蚂蚁, 我觉得跟加target应该类似的,你参考着改改看
[回复]
嗯. 我看到了. 因为现在的项目需要. 不能写在页面中.如果修改 源码 link.js 中的
label:a.lang.common.target,’default’:’notSet’ 为
label:a.lang.common.target,’default’:’_blank’
已经把 超链接的 目标默认为新窗口了.
可是插入的 链接 a 却没有 target 属性. 想请教你修改源码怎么搞.
[回复]
晴枫 6月 17th, 2011 上午10:47 回复:
@noyobo, 其实你可以直接把上面的代码加到某个源码文件里就行了
[回复]
noyobo 6月 17th, 2011 上午11:02 回复:
@晴枫, 好的.谢谢了. 我再去研究一下.
[回复]
楼主, 你这个方法修改的是哪个文件. 版本是?
我也想设置这个. 可是没找到你说的 CKEDITOR.on
[回复]
晴枫 6月 17th, 2011 上午10:36 回复:
@noyobo, ckeditor v3.2.1
上面的代码是在网页的js中直接调用的,不是改ckeditor源码
[回复]