2011-07-11 80 views
1

有沒有辦法修改CKEditor的圖片對話框來默認顯示上傳標籤,而不是圖片信息標籤?CKeditor默認選擇圖片對話框中的上傳標籤

我試着通過添加一行代碼到對話框的onload這樣做:

onLoad: function() { 
    this.getDialog().selectPage('Upload'); 
} 

這似乎做工精細,我可以將圖片上傳到服務器,但作爲一旦我點擊確定按鈕,我就會得到一個許可被拒絕的錯誤。

我也嘗試過CKSource describes的方式,但這給了我一個例外,因爲它覆蓋了onShow方法。

http://docs.cksource.com/CKEditor_3.x/Howto/Default_Dialog_Tab

回答

4

正如您所注意到的,文檔中的示例已損壞,因爲Image插件已經有一個onShow()方法。

訣竅是鏈這樣的方法:

CKEDITOR.on('dialogDefinition', function(e) { 
    if (e.data.name == 'image') { 
     var dialog = e.data.definition; 
     oldOnShow = dialog.onShow; 
     dialog.onShow = function() { 
      oldOnShow.apply(this, arguments); 
      this.selectPage('Upload'); 
     }; 
    } 
}); 
+2

如果您希望CKEditor在雙擊圖像時不切換到上傳標籤,請添加:if(this.imageEditMode === false){this.selectPage('Upload'); }' – deflomu

+0

好!我不得不使用'upload'代替'Upload' –

+0

如果你可以**賦值給未聲明的變量oldOnShow **錯誤改變'oldOnShow ='到'var oldOnShow ='' – user82320

5

加入this.selectPage('Upload');到圖像插件

+0

它爲我工作,但與'「upload''而不是'」 Upload'' .... –

+0

這樣的回答表明修改核心的CKEditor文件,這可能會工作,但將是一個維護問題下一次ckeditor更新您的更改將繼續。 Roger Keays下面的答案是處理默認選項卡的正確方法。記下榆樹的評論。 – user82320

+0

我改變了答案,謝謝 – Mark

1

本文檔介紹如何設置你的CKEditor配置默認對話框選項卡的昂秀功能的一端固定這用戶遵循腳本。

<script type="text/javascript"> 

    CKEDITOR.on('dialogDefinition', function(ev) { 

    var dialogName = ev.data.name; 
    var dialogDefinition = ev.data.definition; 

    if (dialogName == 'image') { 
     dialogDefinition.onShow = function() { 
      // This code will open the Upload tab. 
      this.selectPage('Upload'); 
     }; 
    } 
}); 
</script> 
+0

此鏈接不起作用。顯示Msg「對不起!此網站遇到技術問題。」 –

0

可以: