2017-02-17 26 views
1

我正在研究一個將顯示項目列表的程序。當有人點擊一個項目時,會出現一個彈出窗口,它將加載並使用jQuery加載函數顯示關於該項目的更多信息。有關jQuery加載函數的一些問題

兩種情況:

情況1 - 加載的更多信息是相同的文檔顯示所有項目列表中的程序在程序中。

案例2 - 加載更多信息的程序是在另一個文件中專門爲更多信息調用而製作的。

我的問題是帶寬和加載速度。

的問題:

  • 沒有帶寬增長快於情況下1
  • 加載速度較慢case 1

我會用的更多信息調用的代碼:

  • 情況1個負載功能

    $( 「#result」).load(「AJAX/main.html中GET_DATA = id #container「);

  • 殼體2負載函數

    $( 「#result」).load( 「AJAX/more_info.html GET_DATA = ID?」);

+0

按首頁加載速度加載速度,還是加載更多信息調用? – Kev

+0

@Kev加載更多信息致電 –

+0

我會建議,在同一個HTMl頁面上爲更多信息創建一個模板,並在點擊時加載數據,或者如果你有大的JSON,加載它異步。不要阻止在加載過程中稍後使用的數據的帶寬 – Rajesh

回答

0

如果我理解正確,情況1是預載所有更多信息數據與初始頁面,情況2是加載它的需求。

最多有一定數量的項目(取決於環境),案例1可能會有一個更快的Load More Info操作,因爲它避免了與服務器的往返。但是,加載所有信息所需的初始帶寬將隨着每個可能需要顯示的項目而增加。

換句話說,情況1沒有縮放。這取決於您的應用程序是否重要。如果事先知道項目數量總是很少,那麼預先加載所有項目可能是一個可接受的折衷。

我會建議您獲取您希望處理的規模的數據,並對其進行基準測試。然後,您將得到一個針對您的應用程序的客觀答案 - 至少您的規模預期值得信賴。

+0

不,在這兩種情況下,您都會根據需求加載更多信息內容。但在情況1中,更多信息程序與顯示項目列表的程序位於同一文檔中。 案例1的示例: 「」顯示項目列表的代碼「」... if(isset($ _ GET ['GET_DATA'])){「」代碼更多信息「」} ....「」腳本更多信息點擊事件「」 –

+0

@MarkoMihalič,當你說'程序'時,你似乎在談論HTML數據,那是對的嗎? – Kev

+0

是的,HTML,PHP內容。 –