2012-02-10 14 views
5

मैं ExtJS के लिए नया हूँ गयी। मैं अपनी परियोजना में Extjs 4 का उपयोग कर रहा हूँ। जब ext-all.js भरी हुई है तो वह अपने आप <body> टैग करने के लिए कक्षाओं में कहते हैं। और मेरी सभी अन्य सीएसएस शैलियों extjs शैलियों के साथ बदल जाते हैं। मैंने दस्तावेज़ में पाया कि Ext.scopeResetCSS प्रॉपर्टी को सत्य पर सेट करने के लिए, इसलिए मैं नीचे जैसा जोड़ता हूं।ExtJS निकालें स्वचालित रूप से कक्षाओं

Ext.onReady(function(){ 
     new Ext.Component({ 
      scopeResetCSS: true 
     }); 
    }); 

लेकिन यह किसी भी चीज़ को नहीं बदलेगा। मेरी अभी भी वही समस्या है।

वहाँ स्वचालित रूप से टैग करने के लिए सीएसएस वर्गों को जोड़ने से ExtJS को रोकने के लिए कोई तरीका है? कृपया मदद ..

यह मेरा कोड एक बहु लाइन संदेश बॉक्स उत्पन्न करने के लिए है।

<link rel="stylesheet" type="text/css" href="components/com_jobs/js/extjs/resources/css/ext-all.css"/> 
<script type="text/javascript" src="components/com_jobs/js/extjs/ext-all.js"></script> 

<!-- extjs message box code --> 
<script type="text/javascript"> 

Ext.require([ 
'Ext.window.MessageBox' 
      ]);  

function removeBid(bidid){ 
    Ext.MessageBox.show({ 
     title: 'Address', 
     msg: 'Please enter your address:', 
     width:300, 
     buttons: Ext.MessageBox.OKCANCEL, 
     multiline: true, 
     //fn: showResultText 
    }); 
} 
</script> 

क्या मैं कुछ गलत कर रहा हूं ??? मैं extjs केवल अपने घटकों को शैली के लिए चाहते हैं। लेकिन अब शैलियों शैलियों मेरे पूरे पृष्ठ पर प्रभाव डाल रहे हैं .. कृपया मदद करें।

धन्यवाद।

उत्तर

0

scopeResetCSS संपत्ति Ext.buildSettings, जो Ext जे एस प्रारंभ अनुक्रम की शुरुआत में प्रयोग किया जाता है का हिस्सा है। आप इसे बदलना चाहते हैं, तो आप ext-all.js को संपादित करने या Sencha जे एस बिल्डर में सेटिंग्स (जो मैं आपके द्वारा उपयोग नहीं संभालने हूँ) बदलना होगा।

अपने पसंदीदा टेक्स्ट एडिटर (जो बड़ी फाइलों को संभालने में सक्षम हो सकता है) में ext-all.js खोलें और फ़ाइल की शुरुआत के पास "scopeResetCSS" खोजें, और आपको यह काफी आसान लगेगा।

+0

हाय एरिक, आपके त्वरित उत्तर के लिए धन्यवाद। मैंने ext-all.js में 'scopeResetCSS: true' को बदल दिया है लेकिन अभी भी मुझे समस्या है। Extjs स्वचालित रूप से कक्षाओं को '' और ' 'टैग में जोड़ता है और मेरी सीएसएस शैलियों को बदलता है। :(इस उदाहरण में http://dev.sencha.com/deploy/ext-3.4.0/examples/message -box/msg-box.html, प्रत्येक बटन से जुड़े extjs संदेश बॉक्स हैं। लेकिन कोई extjs कक्षाएं नहीं हैं अपने '' टैग में डाला गया। मैं सिर्फ extzs को अन्य टैग के बजाय अपने घटकों को स्टाइल करना चाहता हूं। – Shakeel

+0

वह उदाहरण Ext JS 3.4 से है। 4.0 के लिए, ऐसा लगता है कि वर्ग स्वचालित रूप से रूट ऑब्जेक्ट्स में जोड़े जाते हैं। आप ext-all-scoped.css (स्टाइलशीट जिसे आप scopeResetCSS = true के साथ उपयोग करना चाहते हैं) खोल सकते हैं और अपने टैग में जोड़े गए वर्गों से स्टाइल नियमों को हटा सकते हैं, या आप ext.Element की removeCls विधि का उपयोग प्रोग्रामेटिक रूप से निकालने के लिए कर सकते हैं एक टैग से कक्षाएं। मुझे पूरा यकीन है कि इसके लिए कोई अंतर्निहित सेटिंग नहीं है। – Eric

0

आप ExtJS 4.0.2a उपयोग कर रहे हैं, तो set the scopeResetCSS BEFORE the include.

हालांकि, मैं सिर्फ ExtJS 4.0.7 में स्विच करने और इस मुद्दे को वापस है। :(

0

मैं इस एक के पार आने से पहले ExtJS 4.2.1 के लिए एक similar question पूछा। समाधान मैं अपनाया डोम संशोधित करने के लिए एक बार ExtJS लोड किया गया था, और के लिए देखने के लिए DOMNodeInserted घटना के लिए एक श्रोता जोड़ने और उसे स्वचालित संभाल था पिक सूचियों जैसे एक्सटीजेएस घटकों का निर्माण। यदि आप रुचि रखते हैं तो आप यहां मेरा जवाब पा सकते हैं: https://stackoverflow.com/a/29934347/857209

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