Подтвердить что ты не робот

Сообщение загрузки jQuery Mobile

Когда я связал jQuery Mobile с моей страницей, в нижней части страницы появилось какое-то загрузочное сообщение, и я не могу избавиться от него. Я пробовал $.mobile.pageLoading(true), но это не сработало.

Как его удалить? Я нигде не печатал его.

4b9b3361

Ответ 1

Документация загрузчика 1.4

Документация 1.4 предполагает взаимодействие с Loader виджетами. В верхней части страницы описывается глобальное изменение параметра, но оно может быть настроено по принципу "по одной ссылке". Это также может работать:

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

Кроме того, согласно http://demos.jquerymobile.com/1.4.5/loader/ и http://api.jquerymobile.com/loader/, вы можете скрыть загрузку с помощью следующий код:

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

Вариант B - отключить загрузку AJAX

Отключение загрузки AJAX эффективно удалит сообщение.

Если вы не хотите, чтобы страница загружалась в фоновом режиме, а затем показывалась, вы можете заставить ее загружаться как "нормальный", указав data-ajax='false' на любом тэге якоря (<a...>), который вы не используете хотите видеть загружаемое сообщение. Также существует глобальная настройка, которую вы можете использовать, чтобы все ссылки загружались "нормально".

Чтобы отключить глобально (не забудьте прочитать эту страницу, чтобы понять последствия и их рекомендации. новые документы может не иметь предупреждений):

$.mobile.ajaxEnabled=false;

Вариант C - просто скройте его

Если вы хотите использовать метод 1.4 Загрузить страницу для загрузки внешних страниц, у него есть опция для showLoadMsg, которую вы можете просто установить на false.

Глобальный параметр (доступный в более ранних версиях - не менее 1.0, 1.1 и 1.2 - читайте об этом здесь), чтобы просто удалить сообщение:

$.mobile.loadingMessage = false;

В предыдущей и предыдущей документах указано, что если вы установите значение "false", загрузочное сообщение не будет показано.

Ответ 2

Я использую последнюю версию JQuery Mobile (в настоящее время 1.4) и сталкиваюсь с этой проблемой. Ни одно из решений здесь не работало для меня, и я думаю, что многие из них устарели. Вот что сработало для меня:

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

$.mobile.loading() предоставит вам элемент, и вы можете hide его или сделать все, что пожелаете. Надеюсь, это поможет кому-то.

Ответ 3

Если вы используете последнее обновление (1.2.0) jquerymobile попробуйте это

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

поскольку он работал у меня.

Ответ 4

У меня была та же проблема, раздражающее загрузочное сообщение и оранжевая рамка. Это произошло из-за не добавления ссылки на таблицу стилей jQuery.

Добавление ссылки в заголовок разрешило ее.

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

Ответ 5

Ответ Pnct ближе к правилу JQM 1.2.0. Тем не менее, нижеследующее будет более правильным для предоставленного документа API.

$.mobile.loading('hide');

Также убедитесь, что у вас есть таблица стилей, определенная для структуры JQM, как минимум в вашем HTML файле. В противном случае это будет выглядеть так, как будто функция ничего не делает.

Ответ 6

В моем случае (jQueryMobile 1.4.5) мне просто пришлось добавить это в свой CSS, и таким образом я могу избежать импорта всего jQueryMobile CSS файла (мне это не нужно).

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

Ответ 7

По умолчанию это сообщение должно быть скрыто. Вероятно, вы не включили официальную таблицу стилей jQuery Mobile.

Нельзя вручную скрывать или отключать загружаемое сообщение через код.

Правильный метод должен включать следующую таблицу стилей для jQuery Mobile 1.4.5:

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

Это позволит решить различные проблемы, включая синие контуры вокруг выбранных элементов в Chrome и оранжевых очертаниях на Android.

Если это сообщение устарело, таблицы стилей для всех версий можно найти здесь: https://jquerymobile.com/download/

Ответ 8

Добавьте это

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

Ответ 9

Попробуйте использовать $.mobile.hidePageLoadingMsg()

Ответ 10

Вы также можете использовать smth. например, чтобы удалить сообщение:

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

Ответ 11

В моем случае я загрузил неправильный файл css (jquery css вместо jQuery mobile css)

Неправильно:

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

Справа:

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