2012-03-27 7 views
0

Ich benutze IScroll, um eine Fußzeile am unteren Rand des Bildschirms auf meiner PhoneGap-Anwendung zu positionieren, aber ich habe ein Problem, mit dem ich seit ein paar Nächten zu kämpfen habe, also hoffe ich einige Sie könnten vielleicht helfen.Wie man Seiten dynamisch läd und IScroll verwendet

Um meine Kopf- und Fußzeile durch die Anwendung beibehalten zu können, habe ich etwas verwendet, das this ähnlich ist.

Normalerweise würde ich an meinem PageCreated-Ereignis binden, aber da dies nicht ausgeführt wird, kann ich das nicht tun. Ich habe versucht, nachdem die Seite empfangen wurde, und ich habe jQuery('#mobilePage').trigger('create'); aufgerufen, um setTimeout(function(){ myScroll.refresh(); },0); zu rufen.

Das Problem ist, dass die Höhe nicht korrekt generiert wird. Die Hälfte der Zeit ist ein Teil des Inhalts unter der Fußzeile versteckt.

Meine Theorie ist, dass Trigger ('create') etwas Zeit braucht, um anzurufen, und ich daher myScroll.refresh() zu früh aufrufen.

Meine Frage ist da, wenn es eine Möglichkeit gibt, sich an das Ereignis Trigger ('create') zu binden, damit ich einen Rückruf erstellen und das Scroll-Update ausführen kann?

+0

helfen u sicher 500ms Zeit auf Trigger verwenden (‚create‘) – ghostCoder

+0

Aber man kann nicht sein, Sicher, dass die Benutzeroberfläche innerhalb der 500ms generiert wird, was bei langsameren Mobiltelefonen zu Problemen führen kann. – Dofs

Antwort

1

in iscroll Code, überprüfen Sie für

checkDOMChanges 

und es wahr machen. dann wird Griff iscroll der Refresh-Einrichtung, wenn dom

0

versuchen, diesen jsfiddle Link Ich denke, ändert, wird es Ihnen

Verwandte Themen