日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > php >内容正文

php

php 判断页面加载完,所有ajax执行完且页面加载完判断

發(fā)布時(shí)間:2023/12/9 php 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php 判断页面加载完,所有ajax执行完且页面加载完判断 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

jquery ajax&load 方法導(dǎo)致 js效果不顯示或顯示后由于加載后ajax 重新布局頁面導(dǎo)致效果錯(cuò)誤。

解決思路:需要在ajax get post 或 load 等執(zhí)行完后再去執(zhí)行方法就不會(huì)由于他們沒執(zhí)行完導(dǎo)致的最終錯(cuò)誤。

那么首先看load 方法定義:jQuery ajax - load() 方法

jQuery Ajax 參考手冊(cè)

實(shí)例

使用 AJAX 請(qǐng)求來改變 p 元素的文本:

$("button").click(function(){

$("p").load('demo_ajax_load.txt');

});

親自試一試

您可以在頁面底部找到更多 TIY 實(shí)例

定義和用法

load() 方法通過 AJAX 請(qǐng)求從服務(wù)器加載數(shù)據(jù),并把返回的數(shù)據(jù)放置到指定的元素中。

注釋:還存在一個(gè)名為 load 的 jQuery 事件方法。調(diào)用哪個(gè),取決于參數(shù)。

語法

load(url,data,function(response,status,xhr))

參數(shù) 描述

url 規(guī)定要將請(qǐng)求發(fā)送到哪個(gè) URL。

data 可選。規(guī)定連同請(qǐng)求發(fā)送到服務(wù)器的數(shù)據(jù)。

function(response,status,xhr)

可選。規(guī)定當(dāng)請(qǐng)求完成時(shí)運(yùn)行的函數(shù)。

額外的參數(shù):

response - 包含來自請(qǐng)求的結(jié)果數(shù)據(jù)

status - 包含請(qǐng)求的狀態(tài)("success", "notmodified", "error", "timeout" 或 "parsererror")

xhr - 包含 XMLHttpRequest 對(duì)象

詳細(xì)說明

該方法是最簡(jiǎn)單的從服務(wù)器獲取數(shù)據(jù)的方法。它幾乎與 $.get(url, data, success) 等價(jià),不同的是它不是全局函數(shù),并且它擁有隱式的回調(diào)函數(shù)。當(dāng)偵測(cè)到成功的響應(yīng)時(shí)(比如,當(dāng) textStatus 為 "success" 或 "notmodified" 時(shí)),.load() 將匹配元素的 HTML 內(nèi)容設(shè)置為返回的數(shù)據(jù)。這意味著該方法的大多數(shù)使用會(huì)非常簡(jiǎn)單:

$("#result").load("ajax/test.html");

如果提供回調(diào)函數(shù),則會(huì)在執(zhí)行 post-processing 之后執(zhí)行該函數(shù):

$("#result").load("ajax/test.html", function() {

alert("Load was performed.");

});

上面的兩個(gè)例子中,如果當(dāng)前文檔不包含 "result" ID,則不會(huì)執(zhí)行 .load() 方法。

如果提供的數(shù)據(jù)是對(duì)象,則使用 POST 方法;否則使用 GET 方法。

加載頁面片段

.load() 方法,與 $.get() 不同,允許我們規(guī)定要插入的遠(yuǎn)程文檔的某個(gè)部分。這一點(diǎn)是通過 url 參數(shù)的特殊語法實(shí)現(xiàn)的。如果該字符串中包含一個(gè)或多個(gè)空格,緊接第一個(gè)空格的字符串則是決定所加載內(nèi)容的 jQuery 選擇器。

我們可以修改上面的例子,這樣就可以使用所獲得文檔的某部分:

$("#result").load("ajax/test.html #container");

如果執(zhí)行該方法,則會(huì)取回 ajax/test.html 的內(nèi)容,不過然后,jQuery 會(huì)解析被返回的文檔,來查找?guī)в腥萜?ID 的元素。該元素,連同其內(nèi)容,會(huì)被插入帶有結(jié)果 ID 的元素中,所取回文檔的其余部分會(huì)被丟棄。

jQuery 使用瀏覽器的 .innerHTML 屬性來解析被取回的文檔,并把它插入當(dāng)前文檔。在此過程中,瀏覽器常會(huì)從文檔中過濾掉元素,比如 ,

或 元素。結(jié)果是,由 .load() 取回的元素可能與由瀏覽器直接取回的文檔不完全相同。

注釋:由于瀏覽器安全方面的限制,大多數(shù) "Ajax" 請(qǐng)求遵守同源策略;請(qǐng)求無法從不同的域、子域或協(xié)議成功地取回?cái)?shù)據(jù)。

更多實(shí)例

例子 1

加載 feeds.html 文件內(nèi)容:

$("#feeds").load("feeds.html");

例子 2

與上面的實(shí)例類似,但是以 POST 形式發(fā)送附加參數(shù)并在成功時(shí)顯示信息:

$("#feeds").load("feeds.php", {limit: 25}, function(){

alert("The last 25 entries in the feed have been loaded");

});

例子 3

加載文章側(cè)邊欄導(dǎo)航部分至一個(gè)無序列表:

HTML 代碼:

jQuery Links:

jQuery 代碼:

$("#links").load("/Main_Page #p-Getting-Started li");

發(fā)現(xiàn)有個(gè)回調(diào)方法,那好啊 ,我在回調(diào)中寫自己的方法就會(huì)在ajax之后執(zhí)行了。于是乎:$("#feeds").load("feeds.php", function(){

fun();

});

但是有個(gè)問題,如果是多個(gè)呢? 每個(gè)后面都加?而且還要判斷此方法是否被執(zhí)行過了。(。。。。。。。。。。)

于是乎:找個(gè)jquery自帶的判斷所有結(jié)束后再去執(zhí)行就OK了,于是:$("p").ajaxStop(function(){

if (hash && !isGlobalHash) {

$("#MfTit"+hash).trigger("click");

isGlobalHash = true;

}

});

定義:

實(shí)例

當(dāng)所有 AJAX 請(qǐng)求完成時(shí),觸發(fā)一個(gè)提示框:$("p").ajaxStop(function(){

alert("所有 AJAX 請(qǐng)求已完成");

});

當(dāng)然 有 stop 就有 start.

總結(jié)

以上是生活随笔為你收集整理的php 判断页面加载完,所有ajax执行完且页面加载完判断的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。