2009-12-01 9 views
5

ग्रीटिंग्स, मैंने jquery UI का उपयोग करके एक मोडल लिखा है और यह एक फ्लैश मूवी के सामने दिखाई देता है, इस प्रकार मोडल के अंदर एचटीएमएल भ्रष्ट हो जाता है, मैंने फिल्म को सही तरीके से छुपाने की कोशिश की मोडल बंद करने के बाद मोडल ट्रिगर हो जाता है और फिर से दिखाई देता है, अच्छी तरह से काम करता है लेकिन प्रत्येक .hide() और .show() फ्लैश मूवी रीसेट हो जाता है, जबकि मैं चाहता हूं कि छिपाना (मूवी को हटाए बिना) और इसे ट्रिगर करने के बाद इसे प्रदर्शित करना उस मोडल div दिखाओ।jquery एक div को छुपाएं जिसमें इसे रीसेट किए बिना फ़्लैश शामिल है

उत्तर

10

एफएफ/लिनक्स में परीक्षण किया गया, एफएफ/WinXP, आईई/WinXp, सफारी/WinXp:

  • अतिप्रवाह के साथ एक नया DIV में अपने फ़्लैश कंटेनर DIV डाल: छिपा

बुनियादी:

  • को छिपाने के लिए फ्लैश div:। $ ('# Id_div_with_swf') सीएसएस ("छोड़" "- 2000px");
  • फ्लैश-div दिखाने के लिए: $ ('# id_div_with_swf')। सीएसएस ("बाएं", "0px");

या, शो और एनीमेशन प्रभाव के साथ छिपाने:

  • को छिपाने के लिए फ्लैश div: $ ('# id_div_with_swf') चेतन ({बाईं: "-2000px"}, 1000);।
  • फ्लैश-div दिखाने के लिए: $ ('# id_div_with_swf')। एनिमेट ({बाएं: "0"}, 1000);

एचटीएमएल उदाहरण:

<div style="width:200px; height:100px; overflow:hidden;"> 
<div id="id_div_with_swf" style="width:200px; height:100px; position:relative; left:0px; top:0px;"> 
<!-- flash here --> 
</div> 
</div> 

आप एक क्रॉस-ब्राउज़र ('दृश्यता', 'दिखाई'/'छुपा') काम कर .css साथ समाधान

+0

wouldn नहीं मिल सकता है ब्राउज़र में एक विशाल क्षैतिज स्क्रॉलबार का यह टॉगल प्रदर्शन नहीं है? –

5

शायद फिल्म से डीवीडी को हटा दें। इसकी बाईं स्थिति को -1000 या उस तरह कुछ सेट करें?

फिर अन्य div गायब होने पर प्रतिस्थापित करें?

8

कार्य समाधान:

उपयोग $('#myvideo').css('visibility', 'hidden') को छिपाने के लिए और
$('#myvideo').css('visibility', 'visible') वीडियो युक्त div दिखाने के लिए।

बस फ़ायरबग के साथ इसका परीक्षण किया।

संपादित: कृपया ध्यान दें, इस .hide() और .show() से अलग है, के रूप में वे visibility के बजाय, display सीएसएस का उपयोग करें।

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