2013-06-05 3 views
1

У меня есть родительский div, который изначально скрыт. Внутри div у меня есть easyui аккордеон div. Когда я вызывал метод show() в родительском div, divoyui div отображается с шириной 0px. Если div не инициализирован, он вычисляет штраф ширины.Почему Divs Получение ширины 0px на jQuery.show() с jQueryEasyUI

Кто-нибудь знает, как правильно скрыть div, а затем, показывая, что он вычисляет правильную ширину?

<div id='masterDiv' style='display:none;'> 
    <div class="easyui-accordion" style='height:475px;' data-options="border:false" > 
     <div title="Overview" class='accordionPanel' data-options="iconCls:'icon-no'" style="overflow:auto;padding:10px;"> 
      <h3 style="color:#0099FF;">Accordion for jQuery</h3> 
      <p>Accordion is a part of easyui framework for jQuery. It lets you define your accordion component on web page more easily.</p> 
     </div> 
     <div title="Checklist" class='accordionPanel' data-options="iconCls:'icon-no'" style="overflow:auto;padding:10px;"> 
      <h3 style="color:#0099FF;">Accordion for jQuery</h3> 
      <p>Accordion is a part of easyui framework for jQuery. It lets you define your accordion component on web page more easily.</p> 
     </div> 
    </div> 
</div> 


<script type='text/javascript'> 
$(document).ready(function(){ 
    $('#masterDiv').show(); 
}); 
</script> 

ответ

0

Почему вы скрываете div, если он должен отображаться после pageload?

ли вы попробовать

document.getElementById("masterDiv").style.display="block"; 
+0

Я скрываю аккордеон и другие компоненты, пока документ не будет полностью загружен, чтобы избежать «мигания» на экране в IE при загрузке. Вышеприведенное утверждение не работает. К сожалению, у меня такое чувство, что это ошибка в jQuery EasyUI. Я присоединился к их форуму несколько месяцев назад, но они никогда не одобряли мое имя пользователя, поэтому я не могу задавать никаких вопросов там :( – AdamVanBuskirk

0

эй я столкнулся с точно такой же проблемой для той же самой причине, что и комментарии вы сделали. Я закончил показ дисплея: ни один из них не добавил вручную каждое изменение css, которое было сделано. Сначала я сделал masterDiv в класс

$('.masterDiv').css("display", "block"); 
$('.masterDiv' .accordian).css('width', '300px); 

Accordian быть независимо от класса easyUI устанавливается на ширине 0px. В итоге это было очень много кода css, но оно работает до тех пор, пока JQuery EasyUI не сможет что-то придумать.

 Смежные вопросы

  • Нет связанных вопросов^_^