Beispielcode hier: Ссылка
Ich versuche, eine mobile Seite mit einem festen Header und einem "Content" -Abschnitt zu erstellen, der extern (hygienisch, aber ansonsten willkürlich) mit HTML gefüllt wird. Ich muss iscroll
oder etwas Ähnliches verwenden, da ich das vertikale / horizontale Scrollen und das Zoomen unterstützen muss, das kein eigenes Gegenstück hat.
Das Problem besteht darin, dass mobile Safari mit der Anweisung " width=device-width
meta-Ansichtsfenster" alle Elemente auf Blockebene unabhängig von der Breite ihres Inhalts auf die Breite des Bildschirms anpasst, sofern sie keine Breite haben. iscroll
betrachtet dann die Breite des Containers (die Breite des Bildschirms) und ist sich nicht bewusst, dass mehr Inhalt horizontal gescrollt werden muss. In diesem Beispiel ist die berechnete Breite für div#container
auf meinem iPhone 290px, aber die berechnete Breite für table#really-wide-content
ist 1000px.
Gibt es etwas, um die Effekte der Meta-Viewport-Direktive innerhalb eines Divs auf der Seite zu deaktivieren? Beachten Sie, dass ich nicht a priori wissen kann, wie breit der Inhalt ist oder wie seine HTML-Struktur aussieht, obwohl ich Inline-Stile bei Bedarf programmatisch ändern kann.
Können Sie die Breite von iScroll an einem bestimmten Punkt nach dem Laden festlegen, z. B. in diesem JQuery-Beispiel:
%Vor%über Ссылка
Gibt es trotzdem eine Möglichkeit, iScroll zu zerstören und neu zu erstellen, nachdem die Seite geladen wurde, wie hier vorgeschlagen: Wie setze ich die dynamische Breite in iScroll für Scroller?
Können Sie die Ansichtsfensterbreite nach dem Laden auf width=device-width
einstellen? Vielleicht würde dies iScroll erlauben, zuerst den Inhalt zu laden.
Tags und Links mobile-safari jquery-mobile viewport iscroll4