• پایان فعالیت بخشهای انجمن: امکان ایجاد موضوع یا نوشته جدید برای عموم کاربران غیرفعال شده است

مشکل Div با listbox و dropdown

amir_3d_mad

Registered User
تاریخ عضویت
4 ژوئن 2007
نوشته‌ها
98
لایک‌ها
0
سلام دوستان مشکل من اینه که یه div دارم که باید بالاتر از همه اشیاء روی صفحه نشون داده بشه ، روی هیچ صفحه ای مشکل ندارم ولی اگر تویه صفحه dropdown یا listbox ( همون select ، Html ) باشه Div میره زیر و dropdown ها میان رو
z-index هم تنظیم هست .......
 

mehdivk

Registered User
تاریخ عضویت
5 آپریل 2006
نوشته‌ها
319
لایک‌ها
0
کد:
<html>
<head>
 <script>
  function DivSetVisible(state)
  {
   var DivRef = document.getElementById('PopupDiv');
   var IfrRef = document.getElementById('DivShim');
   if(state)
   {
    DivRef.style.display = "block";
    IfrRef.style.width = DivRef.offsetWidth;
    IfrRef.style.height = DivRef.offsetHeight;
    IfrRef.style.top = DivRef.style.top;
    IfrRef.style.left = DivRef.style.left;
    IfrRef.style.zIndex = DivRef.style.zIndex - 1;
    IfrRef.style.display = "block";
   }
   else
   {
    DivRef.style.display = "none";
    IfrRef.style.display = "none";
   }
  }
 </script>
</head>
<body>
 <form>
  <select>
   <option>A Select Box is Born ....</option>
  </select>
 </form>
 <div
  id="PopupDiv"
  style="position:absolute; top:25px; left:50px; padding:4px; display:none; background-color:#000000; color:#ffffff; z-index:100">
  .... and a DIV can cover it up<br>through the help of an IFRAME.
 </div>
 <iframe
  id="DivShim"
  src="javascript:false;"
  scrolling="no"
  frameborder="0"
  style="position:absolute; top:0px; left:0px; display:none;">
 </iframe>
 <br>
 <br>
  <a href="#" onclick="DivSetVisible(true)">Click to show DIV.</a>
 <br>
 <br>
  <a href="#" onclick="DivSetVisible(false)">Click to hide DIV.</a>
</body>
</html>
 

amir_3d_mad

Registered User
تاریخ عضویت
4 ژوئن 2007
نوشته‌ها
98
لایک‌ها
0
مرسی mehdivk عزیز .
واقعیتش اینه که من یه Horizontal nav bar یا به عبارتی منوی بازشوی افقی دارم و یه DropDownList هم زیرش قرار داره که موقع باز شدن منوی افقی ، منوی بازشده ، زیر DropDownList قرار میگیره !
با این روشی که شما فرمودید ، فقط موقع کلیک کردن میشه از این حالت جلوگیری کرد در حالی که مشکل من برای موقعی هست که Mouse Over برای تک تک منو ها ایجاد میشه !
حالاهمه اینا به کنار . یه مشکل بزرگتر اینه که منوی بازشو در صفحه MasterPage قرار داره در حالی DropDownList در صفحات وابسته به MasterPage !
 

Graveworm

Registered User
تاریخ عضویت
23 می 2005
نوشته‌ها
1,071
لایک‌ها
12
محل سکونت
Tehran
مرسی mehdivk عزیز .
واقعیتش اینه که من یه Horizontal nav bar یا به عبارتی منوی بازشوی افقی دارم و یه DropDownList هم زیرش قرار داره که موقع باز شدن منوی افقی ، منوی بازشده ، زیر DropDownList قرار میگیره !
با این روشی که شما فرمودید ، فقط موقع کلیک کردن میشه از این حالت جلوگیری کرد در حالی که مشکل من برای موقعی هست که Mouse Over برای تک تک منو ها ایجاد میشه !
حالاهمه اینا به کنار . یه مشکل بزرگتر اینه که منوی بازشو در صفحه MasterPage قرار داره در حالی DropDownList در صفحات وابسته به MasterPage !
این مشکل در واقع یک باگ بود که در ورژن 7 IE و FF 2 حل شده
و تنها راه حل اون استفاده از iframe هست ..

http://blog.crowe.co.nz/archive/2005/08/18/220.aspx
 

amir_3d_mad

Registered User
تاریخ عضویت
4 ژوئن 2007
نوشته‌ها
98
لایک‌ها
0
بله میدونم تنها راه حلش استفاده از Iframe هست .
چون قبل از مطرح کردن سوالم اینجا ، با جستجویی که کرده بودم ، بیشتر از 100 سایت رو دیدم که اکثرا با Iframe این مشکل رو حل کردن .
ولی متاسفانه از بین اون همه ، نتونستم یک جواب خوب و معقول بگیرم .
به هر حال ، Ifame هم مشکلات خودش رو داره و در یک پروژه ی بزرگ نمیشه به دفعات از اون استفاده کرد .
فقط یه جایی دیدم که این مشکل رو با استفاده از کد نویسی پشت صفحه ASPX حل کرده بودند که اونم باز بر پایه استفاده از IFRAME بود ، ولی نیاز به اضافه کردن Iframe توی خود صفحه نداشت !
که البته اونم درست جواب نداد !
اگر راه حلی برای این مشکل از طریق کد نویسی بود ، خیلی بهتر از این کارهای اضافی و اتلاف وقت بود !
باز ممنون از دوستان که کمک کردن .
باز من منتظر نظرات و پیشنهادات جدید هستم ، بلکه یه راه معقولتر برای این مشکل پیدا کنیم .
 
بالا