1. 程式人生 > >控制使用jquery load()方法載入新頁面中的元素

控制使用jquery load()方法載入新頁面中的元素

三個參數 解決 獲取 參數 頁面 紮實 第一個 之前 簡單

最近在項目中用到jquery的load()方法來加載頁面,首先簡單說一下load()方法。

load(url,data,callback);該方法接收三個參數,第一個是載入的頁面地址,第二個是要傳到服務器的參數,第三個是頁面加載成功後執行的回調函數。這三個參數中,data和callback是根據具體的項目需求可選的。下面就來說說遇到的問題:頁面中放一個空的div容器用來載入新的頁面,載入後需要控制新頁面中的元素顯示隱藏狀態,這就需要獲取載入頁面的元素,再進行下一步的操作。載入頁面後審查元素,載入的頁面內容直接顯示在div容器裏面了,我當時在load(url)方法後面,直接獲取元素進行隱藏,但是載入頁面的元素並沒有隱藏,當時很費解,心想我又不是通過iframe引入的頁面,為什麽無法隱藏呢?後來在網上搜索,和同事商量,最後找到了解決辦法,在load(url,callback)方法裏面加上回調函數,在回調函數裏面獲取元素進而隱藏。這是為什麽呢,個人覺得可能跟js執行順序有關,執行完load(url)後,下面的代碼跟著繼續執行,不會等到load()執行完畢。後來在網上搜索,load()方法加載頁面是異步執行的,所以只有在load()的callback裏面才能獲取到頁面元素。原來如此,這個小問題費了兩個小時的時間,還是基礎不紮實啊。由此擴展,load()方法載入頁面在部分情況下可以取代之前使用的iframe載入頁面,以後有機會會去嘗試。

控制使用jquery load()方法載入新頁面中的元素