中央西門風痕影
最近遇到一個需求是讓 CKEditor 4.x 的超連結設定對話框預設選擇目標框架為「開新視窗」(target="_blank")。因為該部分的預設值是被寫在 link plugin 裡的,未提供設定,因此找到的方法大多都是直接修改 plugin 的原始碼

不太想直接修改原始碼,也不太想另外自己做一個 plugin。後來找到了另一個辦法
中央西門風痕影
這個方法會用到 CKEditor 的 dialogDefinition 事件:
CKEDITOR.on( 'dialogDefinition', function( event ) {
// 在此修改設定
} )


event.data. name (空白是為了避免被噗浪轉成超連結而加上的)等於 'link' 的時候,就是超連結的設定對話框

然後再取得對話框裡頁籤與欄位的定義,並把預設值改掉:
event.data.definition.getContents( 'target' ).get( 'linkTargetType' )[ 'default' ] = '_blank';

-
載入新的回覆