2012-02-01 16 views
9

पर कोने प्रकार गोल मैं jQuery संवाद प्लगइन का उपयोग कर रहा है और डिफ़ॉल्ट शीर्षक पट्टी गोल के सभी 4 कोनों है। आपको मार्क-अप कि संवाद यहाँ पैदा करतासेटिंग jQuery यूआई संवाद

http://jqueryui.com/demos/dialog/#theming

कि उदाहरण आप ui-dialog-titlebar पर देख सकते हैं में देख सकते हैं div, एक वर्ग ui-corner-all कहा जाता है मैं ui-corner-top करने के लिए कि परिवर्तन करना चाहते हैं। जब मैं संवाद शुरू करता हूं तो गोलाकार कोने वर्ग के प्रकार को सेट करने का कोई तरीका है?

जावास्क्रिप्ट फ़ाइल वहाँ में हमेशा उस वर्ग के लिए संपादन jQuery यूआई संवाद की hacky विकल्प नहीं है, लेकिन है कि अनम्य लगता है।

धन्यवाद

उत्तर

15

वैसा करने के लिए jQuery ui पुस्तकालय बदलाव नहीं होना चाहिए। कल्पना करें कि प्रत्येक बार जब आप इसे अपग्रेड करना चाहते हैं तो आपको लाइब्रेरी को बदलना होगा।

jQuery UI विजेट्स विजेट फैक्टरी लागू करता है। जब कोई विजेट प्रारंभ होता है, तो एक ईवेंट "बनाना" निकाल दिया जाता है। उत्पन्न मार्कअप को बदलने के लिए इस घटना का उपयोग करें:

$("#dialog").dialog({ 
    create: function(e, ui) { 
     // 'this' is #dialog 
     // get the whole widget (.ui-dialog) with .dialog('widget') 
     $(this).dialog('widget') 
      // find the title bar element 
      .find('.ui-dialog-titlebar') 
      // alter the css classes 
      .removeClass('ui-corner-all') 
      .addClass('ui-corner-top'); 
    } 
}); 

DEMO

+0

कूल, उत्कृष्ट मदद के लिए आपकी मदद –

+0

+1 के लिए धन्यवाद। बहुत उपयोगी। – gibberish

1

आप में से जो कि बस बॉर्डर-त्रिज्या पूरी तरह निकालना चाहते हैं (या किसी अन्य JQuery यूआई शैलियों), तो आप बनाने की जरूरत संवाद विकल्पों में एक "संवाद क्लास"।

$("#dialog").dialog({ 
modal: true, 
draggable: true, 
resizable: false, 
dialogClass: "MyClass", 
}); 

एक बार ऐसा करने के बाद, आप अपने स्वयं के सीएसएस स्टाइलशीट के भीतर किसी भी डिफ़ॉल्ट कक्षाओं और शैलियों को संशोधित कर सकते हैं।

.MyClass .ui-corner-all { 
    border-radius: 0; 
} 
संबंधित मुद्दे