Heim > Web-Frontend > js-Tutorial > Warum müssen jQuery Mobile Page-Skripte in „index.html' enthalten sein?

Warum müssen jQuery Mobile Page-Skripte in „index.html' enthalten sein?

Patricia Arquette
Freigeben: 2024-11-11 02:24:02
Original
552 Leute haben es durchsucht

Why Do jQuery Mobile Page Scripts Need to Be Included in `index.html`?

Warum Skripte bei Verwendung von jQuery Mobile in Index.html enthalten sein müssen

Einführung

In jQuery Mobile-Projekten führt die Umleitung von Seiten mithilfe von $.mobile.changepage() zu Verwirrung. Entwickler müssen alle Seitenskripte in derselben Datei, index.html, einbinden, andernfalls kann die Umleitungsseite die in ihrem Header definierten Funktionen nicht ausführen. In diesem Artikel wird das Verhalten hinter diesem Phänomen erläutert.

Wie jQuery Mobile mit Seitenänderungen umgeht

jQuery Mobile verwendet Ajax, um nachfolgende Seiten zu laden. Während die erste Seite normal geladen wird, laden nachfolgende Seiten nur ihren Hauptinhalt. Insbesondere wird nur das erste Div mit dem Attribut data-role="page" in das DOM integriert und alles andere verworfen.

Grund für die Inoperabilität des Skripts

In Ihrem Auf der zweiten Seite und den folgenden Seiten ist die Schaltfläche sichtbar, da HTML normal gerendert wird. Das Click-Ereignis funktioniert jedoch nicht, da sein übergeordneter Kopf beim Seitenübergang ignoriert wurde.

Lösung 1: Skripte in den Hauptinhalt verschieben

Eine schnelle Lösung ist das Verschieben Fügen Sie das Skript-Tag in den Hauptinhalt nachfolgender Seiten ein:

<body>
    <div data-role="page">
        // HTML content
        <script>
            // JavaScript
        </script>
    </div>
</body>
Nach dem Login kopieren

Lösung 2: Konsolidieren von Skripten in Index.html

Eine bevorzugte Lösung besteht darin, das gesamte JavaScript in zu verschieben eine einzelne Datei, index.js, im Kopf der ersten HTML-Datei platziert:

<head>
    <meta ...>
    <link rel="stylesheet" ...>
    <script src="jquery.mobile-1.2.0.min.js"></script>
    <script src="index.js"></script> // Your consolidated JavaScript
</head>
Nach dem Login kopieren

Grund für die Index.html-Konsolidierung

Phonegap, wie jQuery Mobile , kann Fehler aufweisen. Wenn das gesamte JavaScript in einer einzigen HTML-Datei platziert wird, könnte ein Fehler auftreten und die aktuelle Seite aktualisieren. Wenn dieser Seite das erforderliche JavaScript fehlt, funktioniert sie bis zum Neustart nicht mehr.

Realistische Lösung

Verschieben Sie die Datei index.js in den Kopf aller anderen HTML-Dateien . Dadurch wird sichergestellt, dass auf Skripte auch dann zugegriffen werden kann, wenn andere DOM-Elemente aufgrund von Fehlern verloren gehen.

Fazit

Zu verstehen, wie jQuery Mobile mit Seitenänderungen umgeht, ist für eine erfolgreiche App-Entwicklung von entscheidender Bedeutung. Die Konsolidierung von Skripten in index.html ist eine empfohlene Lösung, um die Skriptverfügbarkeit sicherzustellen und mögliche Probleme mit Phonegap zu verhindern.

Das obige ist der detaillierte Inhalt vonWarum müssen jQuery Mobile Page-Skripte in „index.html' enthalten sein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage