2011-09-07 17 views
11

यह एचटीएमएल कोड है:JQuery संवाद मोडल विकल्प काम नहीं कर

<div id="dialog" title="lala" style="display:none;"> 
     <p>This is the default dialog which is useful for displaying information. The dialog window can be moved, resized and closed with the 'x' icon.</p> 
</div> 

यह है जावास्क्रिप्ट

$bb('#addTopicButton').live('click',function() { 

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

     }); 

क्यों मोडल काम नहीं कर रहा? जब यह खोला जाता है तब भी मैं पृष्ठ पर अन्य लिंक क्लिक कर सकता हूं और पृष्ठभूमि में चीजें कर सकता हूं।

धन्यवाद एक बहुत

अद्यतन: हालांकि यह काम कर रहा है। पृष्ठभूमि में केवल लिंक सक्रिय हैं और काम कर रहे हैं। लिंक सहित सभी चीज़ों को मैं कैसे अक्षम कर सकता हूं?

+0

आप सही स्थान पर प्रासंगिक सीएसएस फ़ाइलें है? जैसा कि मुझे याद है, संवाद के पीछे ओवरले लगाकर मोडल काम करता है जो उपयोगकर्ता को किसी और चीज पर क्लिक करने से रोकता है। इस ओवरले के लिए कुछ सीएसएस काम करने की आवश्यकता है। –

+0

मेरे पास कोई सीएसएस नहीं है, मुझे इसे कैसे परिभाषित किया जाना चाहिए? – Andrew

+0

यह jqueryui –

उत्तर

19

आपको शायद अपने पृष्ठ पर jQuery UI CSS शामिल करने की आवश्यकता है।

गूगल यहाँ अपने CDN पर इस है:

http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/base/jquery-ui.css

संवाद पर मोडल विकल्प आपके संवाद के तहत लेकिन सामग्री के बाकी हिस्सों में आच्छादन बनाता है। इस ओवरले को jQuery UI सीएसएस को सही ढंग से कार्य करने की आवश्यकता है।

+1

के साथ आता है यह था! बहुत बहुत धन्यवाद, शानदार, मुझे नहीं पता कि मैं इसके बारे में कैसे भूल सकता हूं – Andrew

+1

यह आसान है, मैं हर समय ऐसा करता हूं। दूसरे दिन एक नए पृष्ठ पर काम करने के लिए jquery प्राप्त करने का प्रयास करने में एक घंटे बिताएं और jquery – Brad

16

बस एक ही समस्या थी। मुझे सीएसएस की जरूरत थी, लेकिन मुझे यह सब नहीं चाहिए था। तो मैं सिर्फ अपने ही सीएसएस कोड में इस हिस्से चिपकाया कॉपी:

.ui-widget-overlay { 
    position: absolute; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    background: #aaaaaa; 
    opacity: 0.3; 
} 
+0

सरल और बिंदु शामिल करना भूल गया था। धन्यवाद। मेरे लिए काम करता है :) –

+0

.css फ़ाइल के आवश्यक भाग को इंगित करने के लिए धन्यवाद :) – Vinzenz

+0

कमाल !! मुझे पहले इस बारे में सोचने के लिए गूंगा लगता है: पी – ettdro

13

अपने सीएसएस करने के लिए केवल .ui-विजेट ओवरले ओवरले पूरा शीर्ष पर प्रकट कर देगा, और यहां तक ​​कि संवाद जोड़ना व्यर्थ हो जाएगा।

इसलिए, .ui-सामने वर्ग भी जोड़ा जाना चाहिए:

.ui-widget-overlay { 
    position: fixed; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
} 
.ui-front { 
    z-index: 100; 
} 
+0

जेक्यू-यूआई से पूरी आधार शैलियों को शामिल करने के मामले में मेरे मामले में काफी बेहतर है। बहुत धन्यवाद! – Arvid

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