wake-up-neo.com

jQuery Mobile-Lademeldung

Wenn ich jQuery Mobile mit meiner Seite verknüpft habe, wird unten auf der Seite eine Art Lademeldung angezeigt, die ich nicht loswerden kann. Ich habe $ .mobile.pageLoading (true) probiert, aber es hat nicht funktioniert.

Wie soll ich es entfernen? Ich habe es nirgendwo gedruckt.

25
MikkoP

Die 1.4-Laderdokumentation

Die 1.4-Dokumentation schlägt die Interaktion mit dem Loader -Widget vor. Oben auf der Seite wird beschrieben, wie die Option global geändert wird. Sie kann jedoch von Link zu Link differenziert werden. Das kann auch funktionieren:

$( document ).on( "mobileinit", function() {
    $.mobile.loader.prototype.options.disabled = true;
});

Gemäß http://demos.jquerymobile.com/1.4.5/loader/ und http://api.jquerymobile.com/loader/ können Sie auch das ausblenden Ladeerfahrung mit dem folgenden Code:

// As submitted by @Aras
$.mobile.loading( "hide" );
// (or presumably as submitted by @Pnct)
$.mobile.loading().hide();

Option B - deaktivieren AJAX Laden

Durch das Deaktivieren von AJAX Laden wird die Nachricht effektiv entfernt.

Wenn Sie nicht möchten, dass eine Seite vom Hintergrund geladen wird und dann angezeigt wird, können Sie sie wie "normal" laden, indem Sie den data-ajax='false' auf dem Ankertag (<a...>) angeben, den Sie nicht sehen möchten eine Lademeldung für. Es gibt auch eine globale Einstellung, mit der alle Links normal geladen werden können.

Um global zu deaktivieren (stellen Sie sicher, dass lesen Sie diese Seite , um die Auswirkungen und ihre Empfehlungen zu verstehen. Das neue Dokument enthält möglicherweise keine Warnungen.)

$.mobile.ajaxEnabled=false;

Option C - einfach verstecken

Wenn Sie mit dem 1.4 Load Page -Ansatz externe Seiten laden möchten, steht für showLoadMsg eine Option zur Verfügung, die Sie einfach auf false setzen können.

Die globale Option (in früheren Versionen verfügbar - mindestens 1.0, 1.1 und 1.2 - lesen Sie dazu hier ), um nur die Nachricht zu entfernen:

$.mobile.loadingMessage = false;

In der 1.2 und früheren Dokumentation heißt es, dass keine Lademeldung angezeigt wird, wenn Sie den Wert auf "False" setzen.

32
veeTrain

Ich verwende die neueste Version von JQuery Mobile (derzeit 1.4) und stoße auf dieses Problem. Keine der Lösungen hier hat für mich funktioniert, und ich denke, dass viele von ihnen abgelehnt wurden. Folgendes hat für mich funktioniert:

$.mobile.loading().hide();

$.mobile.loading() gibt Ihnen das Element und Sie können hide es tun oder tun, was Sie sonst noch wünschen. Hoffe das hilft jemandem.

26
Aras

Wenn Sie das neueste Update (1.2.0) von jquerymobile Verwenden, versuchen Sie es hier 

$.mobile.loading( 'show', { theme: "b", text: "", textonly: false});

da hat es für mich funktioniert.

9
Pnct

Ich hatte das gleiche Problem, eine ärgerliche Lademeldung und einen orangefarbenen Rahmen. Der Verweis wurde nicht in das Jquery-Stylesheet eingefügt.

Das Hinzufügen der Referenz in der Kopfzeile löste es.

<link rel="stylesheet" type="text/css" href="https://code.jquery.com/mobile/1.4.0/jquery.mobile-1.4.0.min.css">
8
Dani

In meinem Fall (jQueryMobile 1.4.5) musste ich dies nur zu meinem CSS hinzufügen, und auf diese Weise kann ich den Import der gesamten jQueryMobile-CSS-Datei vermeiden (ich brauche sie nicht).

.ui-loader {
  display: none !important;
}
3
sonxurxo

Die Antwort von Pnct ist näher an der Korrektur für JQM 1.2.0. Je nach API-Dokument ist das Folgende jedoch korrekter. 

$.mobile.loading('hide');

Stellen Sie außerdem sicher, dass Sie mindestens ein Stylesheet für die JQM-Struktur in Ihrer HTML-Datei definiert haben. Sonst sieht es so aus, als würde die Funktion nichts tun.

3
Ryan Skoblenick

Füge das hinzu

<script>
$(document).ready(function(){
  $(".ui-loader").hide();
});
</script>
2
antonio

Diese Nachricht sollte standardmäßig ausgeblendet sein. Wahrscheinlich haben Sie das offizielle Stylesheet von jQuery Mobile nicht mitgeliefert.

Sie sollten die Lademeldung nicht manuell durch Code ausblenden oder deaktivieren.

Die richtige Methode sollte sein, das folgende Stylesheet für jQuery Mobile 1.4.5 einzufügen:

<link rel="stylesheet" type="text/css" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile.structure-1.4.5.css">

Dadurch werden verschiedene Probleme gelöst, darunter blaue Konturen um ausgewählte Elemente in Chrome und orange Konturen in Android.

Falls dieser Beitrag nicht mehr aktuell ist, finden Sie die Stylesheets für alle Versionen hier: https://jquerymobile.com/download/

2
Kelvin

Sie können auch smth verwenden. So entfernen Sie die Nachricht:

$('.ui-loader h1').remove();
1
montie

Versuchen Sie es mit $.mobile.hidePageLoadingMsg()

0
Jay Blanchard

In meinem Fall habe ich eine falsche css-Datei geladen (jquery css statt jquery mobile css)

Falsch:

<link href="../CSS/jquery-ui-1.11.4.custom/jquery-ui.min.css" rel="stylesheet" />

Recht:

<link href="../CSS/jquery.mobile-1.4.5.min.css" rel="stylesheet" />
0
Zeni