2013-03-01 11 views
2

Итак, у меня есть 2 обертки, у которых есть highchart, а у другого есть карта с лифтом. Im, используя кнопки для переключения и выключения div. Диаграмма диаграмм отлично работает, но карта, которую я должен дважды щелкнуть по кнопке, чтобы получить ее для рендеринга. Я попытался поставить setTimer(), чтобы увидеть, поможет ли с переходом, но ничего. У меня есть скрипка, которая иллюстрирует то, что я пытаюсь сделать, но ее проблема с картой here. Мой вопрос в том, почему он не будет сразу отображать? и что я могу сделать, чтобы сделать это сразу? Благодаряконтейнер .fadeIn/Out с HighCharts и листом.

ответ

0

Вы рендеринг chart в container и container имеет как map и chart поэтому после оказания chart ваших map div удалены из container поэтому он создает проблемы.

Примечание: вы дали container id к div дважды

Замените HTML как

<div id="maincontainer"> 
    <div id="chart-wrapper" style="display:block; overflow: auto;"> 
     <div id="container" style="min-width: 400px; height: 400px; margin: 0 auto;"></div> 
    </div> 
    <div id="map-wrapper" style="overflow: auto; display: none;"> 
     <div id="map-container" style="height: 400px; "></div> 
    </div> 
</div> 


<button id="toggle-btn">Map</button> 
<button id="run-btn">run</button> 

Fiddle http://jsfiddle.net/QBYPH/2/