2012-09-06 13 views
5

मुझे CKEditor की छवि प्लगइन में पूर्वावलोकन तत्व छिपाने में कोई समस्या है। मुझे छवि स्रोत के लिए केवल इनपुट फ़ील्ड के साथ एक बहुत ही सरल छवि संवाद बॉक्स चाहिए और छवि अपलोड करने के लिए बटन के साथ फ़ॉर्म की आवश्यकता है।CKEditor की छवि प्लगइन में HTMLPreview निकालें

CKEDITOR.on('dialogDefinition', function(ev) 
{ 
    var dialogName = ev.data.name; 
    var dialogDefinition = ev.data.definition; 
    if (dialogName == 'image'){ 
     dialogDefinition.removeContents('advanced'); 
     dialogDefinition.removeContents('Link'); 
     var infoTab = dialogDefinition.getContents('info'); 
     infoTab.remove('ratioLock'); 
     infoTab.remove('txtHeight');   
     infoTab.remove('txtWidth');   
     infoTab.remove('txtBorder'); 
     infoTab.remove('txtHSpace'); 
     infoTab.remove('txtVSpace'); 
     infoTab.remove('cmbAlign'); 
     infoTab.remove('txtAlt'); 
    } 
}); 

समस्याएं शुरू हो जब मैं htmlPreview तत्व छिपाने की कोशिश: तो मैं इन कस्टम विन्यास सेटिंग्स का उपयोग कर अनावश्यक तत्वों को हटा दिया। यदि मैं बस infoTab.remove('htmlPreview '); जोड़ता हूं, तो एक त्रुटि उत्पन्न होगी: Uncaught TypeError: Cannot call method 'setStyle' of null हटाए गए तत्व के लिए कोड निर्भरताओं के कारण। मैं एक बहुत googled और ऐसा लगता है कि इस समस्या को हल करने के दो तरीके हैं कि - मैन्युअल रूप से के रूप में लिखा there (

मुझे लगता है कि एकमात्र समाधान छवि/संवाद से सभी जावास्क्रिप्ट कार्यों दूर करने के लिए है प्लगइन का स्रोत कोड को संपादित /image.js कि इन एचटीएमएल वस्तुओं का उल्लेख है, जो आप हटा दिया।

मैं इस सलाह का पालन करने की कोशिश की, लेकिन बाद में त्रुटियों के बिना स्रोत फ़ाइल को संपादित नहीं कर सकता है) या अपने ही लिखें। बेशक, मैं बस कुछ सीएसएस नियम जोड़ सकता हूं और तत्वों को छुपा सकता हूं, लेकिन मुझे लगता है कि यह एक अच्छा विचार नहीं है। यह समस्या पुरानी है और मुझे यकीन है कि एक अच्छा समाधान है, लेकिन मैं इसे खोजने में विफल रहा। आशा है कि आप मेरी मदद करेंगे। पहले ही, आपका बहुत धन्यवाद।

पीएस मेरे पास सीकेडडिटर का नवीनतम संस्करण है - 3.6.4।

उत्तर

7

कोशिश कर सकते हैं, तो आप आसानी से पूर्वावलोकन आगे फ़ाइल के बाकी का समायोजन भी अपने सभी संदर्भ निकाल बिना निकाल सकते हैं।

मैं अपने विन्यास प्लगइन का उपयोग करने के लिए (या इसी तरह कोड लिखने) के रूप में यहाँ वर्णित आप सुझाव है: http://alfonsoml.blogspot.com.es/2012/04/hide-dialog-fields-in-ckeditor.html

config.hideDialogFields="image:info:htmlPreview"; 

आप अपने ब्लॉग से प्लगइन डाउनलोड कर सकते हैं या यदि आप CKEditor 4 के लिए स्विच कर लें, जोड़ने यह आपके निर्माण के लिए: http://ckeditor.com/addon/confighelper

+0

यह 14 नवंबर में अभी भी एक आसान और प्रभावी समाधान है। प्लगइन (सीकेडिटर साइट से जुड़े हुए) से मुझे घंटों और घंटों बचाए गए हैं। धन्यवाद @AlfonsoML –

0

यू तरीके के कारण उस छवि संवाद लिखा है करने के लिए infoTab.remove('htmlPreview');

+0

आपने मेरा प्रश्न सावधानी से नहीं पढ़ा है। मैंने उल्लेख किया कि यह विधि काम नहीं करती है। –

संबंधित मुद्दे