So verwenden Sie JavaScript Infovis Toolkit in verstecktem Container (Layout für Registerkarten)

StackOverflow https://stackoverflow.com/questions/5311385

Frage

Ich habe eine Seite mit mehreren Registerkarten (Registerkarten von JQuery UI)

Auf der letzten Registerkarte zeige ich ein "Spacetree". Ich habe dies ordnungsgemäß auf einer separaten Testseite (ohne Registerkarten). Sobald ich alles zur Registerkartenseite hinzufüge, hört der Baum auf.

Die DIV mit der Infovis -ID befindet sich innerhalb des richtigen "Tab" Div und wird als solche definiert:

<div id="tab2">                                                              
    <div id="infovis" style="position:relative; height:380px; width:350px; border:solid 1px #333;">

    </div>
</div>

In Firebug kann ich sehen, dass die Infovis Div die Höhe und Breite richtig eingestellt hat, aber der "Infovis-Canvaswidget", der in die Innenseite platziert wird, erhält Höhe und Breite von 0, von denen ich vermute, dass sie Teil des Problems ist.

Wie kann ich dieses Problem lösen und das Toolkit in einem Registerkartenbehälter verwenden?

War es hilfreich?

Lösung

Oh ok, ich habe es behoben, nachdem ich eine Weile herumgestoßen hatte. Es war nicht der Registerkartenbehälter, der die Dinge durcheinander brachte. Das gesamte DIV, das die Registerkarten enthält, ist auf der Seitenlast versteckt, bevor die JIT in meinem Dokument initialisiert wurde.

Ich musste das Spacetree einrichten, bevor das äußere Div versteckt war, um sicherzustellen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top