#jquery
#jquery
Вопрос:
вот сайт, на который я ссылаюсь:http://www.graphicfirm.com/index.php
если вы прокрутите страницу вниз и, например, нажмете на automotive во время загрузки картинок, вы увидите сообщение с надписью searching …. а затем, когда вы нажимаете на картинку, все как бы затемняется, и вы видите загрузку сообщения…
как это делается с помощью jquery / ajax?
поправьте меня, если я ошибаюсь, но это мое лучшее предположение.
$.ajax({
url: "ajax.php",
type: "GET",
dataType: "json",
data: "attribute=myvalue",
beforeSend: function()
{
$(".mymessage").show();
//dim page
},
complete: function()
{
$(".mymessage").hide();
//undim page
},
success: function(data)
{
//load data
}
});
если я все понял правильно, как бы они затемняли страницу?
если я ошибся, можете ли вы показать мне образец?
Спасибо
Комментарии:
1. Эта ссылка указывает на тестовую страницу apache 🙂
2. попробуйте printfirm.com я не знаю, почему это происходит, но не для меня
3. перейдите к graphicfirm.com/index.php не index.html
Ответ №1:
Посмотрите на: http://malsup.com/jquery/block
Это позволяет блокировать весь сайт во время отображения сообщения вашему пользователю.
Ответ №2:
Вот как вы должны это сделать:
$(".mymessage").show();
$.ajax({
url: "ajax.php",
type: "GET",
dataType: "json",
data: "attribute=myvalue",
success: function(data)
{
$(".mymessage").hide();
//load data
}
});
Поместите $(".mymessage").show();
перед вызовом ajax и скройте его сразу после success
выполнения.
Комментарии:
1. вопрос в том, как мне скрыть или затемнить всю страницу?
2. Предполагая, что вся страница заключена в
div
like<div id="wrapper">
, вы можете сделать это следующим образом:$("#wrapper").css({"opacity":"0.5"})
а затем вsuccess
функции вызова ajax сбросить его на 1 следующим образом:$("#wrapper").css({"opacity":"1"})
3. спасибо, позвольте мне попробовать, и я отвечу, если у меня возникнут какие-либо проблемы. примерно так я и думал, что это сработает, но позвольте мне попробовать и посмотреть, что получится.