慈溪網(wǎng)站建設(shè):如何在web設(shè)計中解決ajax問題
發(fā)布日期: 6/24/2019 10:20:28 AM 點擊量: 1236
在本文中,我們將討論如何解決寧波網(wǎng)站建設(shè)的五個最常見的挑戰(zhàn)。使用Ajax來增強網(wǎng)站上的內(nèi)容,盡管關(guān)于所有五個主題都有很多討論和研究,但是這個職位應該給初學者和中級Ajax開發(fā)人員一些可靠的技能,以便以更方便和易于理解的方式實現(xiàn)Ajax函數(shù)。
問題1:內(nèi)容不是向后兼容
當出現(xiàn)此問題時,設(shè)計人員已經(jīng)將JavaScript和Ajax增強到他們的網(wǎng)站架構(gòu),而不指定禁用JavaScript的瀏覽器。
JavaScript和Ajax網(wǎng)站有哪些錯誤JavaScript應該被視為規(guī)劃過程的一部分,但是您應該確保站點是向后兼容的。
解決方案:將Ajax實現(xiàn)為已經(jīng)運行的網(wǎng)站的增強
盡管Ajax可能計劃網(wǎng)站的總體架構(gòu),余姚網(wǎng)站建設(shè)以確保所有工作都可以通過常規(guī)的服務器端方法來完成。
假設(shè)您有一個員工信息頁面,每個員工有一個單獨的鏈接。使用服務器端技術(shù),您可以基于查詢字符串的值顯示特定員工的內(nèi)容,以便:
上面所有的鏈接指向雇員頁面上的同一頁面,并根據(jù)變量查詢字符串。每個雇員的信息將以多種方式從服務器加載:通過服務器端;通過數(shù)據(jù)庫;甚至使用XML。
是否單擊了雇員鏈接,則頁面通過所請求的信息加載。
因此,在任何Ajax增強層之上的內(nèi)容都是完全可以接受的。然后,使用JavaScript,全頁刷新可以中斷和內(nèi)容,而不是通過AJAX加載。單擊鏈接可以通過ID或檢查錨href屬性的值來確定。
盡管內(nèi)容可以完全禁用javascript,但是大多數(shù)用戶會看到增強的AJAX驅(qū)動程序版本。
Ajax漸進增強的原理是眾所周知的,因為它是常用的JavaScript技術(shù)和固有的CSS,如下圖所示:
因此,在沒有JavaScript的情況下構(gòu)建網(wǎng)站,然后添加JavaScript作為增強,就像添加HTML內(nèi)容然后使用CSS增強一樣。
慈溪網(wǎng)站建設(shè)
問題2:瀏覽器加載指示器不通過Ajax請求觸發(fā)
幾乎所有瀏覽器都直觀地顯示要加載的用戶內(nèi)容。余姚網(wǎng)絡公司在當前瀏覽器中,指示標簽中顯示的加載內(nèi)容。
下面的圖片顯示了來自幾個流行瀏覽器的動畫指示器。
問題是Ajax請求不觸發(fā)這個負載度量,即內(nèi)置瀏覽器。
解決方案:在內(nèi)容、負載上插入類似的負載指數(shù)
這種常見的解決方案是將自定義進度指示符作為Ajax請求。許多網(wǎng)站提供免費加載的圖形。
為站點的Ajax功能實現(xiàn)自定義加載圖形或漸進指示器,只需在適當?shù)臅r候通過JavaScript顯示和隱藏它。
Ajax代碼將包括幾行代碼,這些代碼告訴您請求是否正在進行或已經(jīng)完成。
問題3:用戶不知道Ajax請求已經(jīng)完成
這常常被忽略,因為開發(fā)人員可能認為缺少的負載度量可以通知用戶內(nèi)容已經(jīng)完全加載。但是在大多數(shù)情況下,它所顯示的內(nèi)容已經(jīng)更新或刷新得更好。
解決方案:用唯一請求完成的消息
這可以通過提交這樣的表單來確認。慈溪網(wǎng)絡公司在已經(jīng)提交給Digger的鏈接頁上,請非常清楚地告知您已經(jīng)收到了您的提交:
Digg形式提交指示符
雖然這個指示符沒有指示Ajax請求的完成,但原理是相同的:在成功對話框出現(xiàn)后,加載提交表單的頁面,這與框不同。
在Ajax請求中可以使用類似的圖表或度量來告訴用戶內(nèi)容已經(jīng)更新。這是除了實現(xiàn)之外,而不是以前的問題,建議的進度指示符。
一種類似但微妙的方式來顯示一個區(qū)域的內(nèi)容已經(jīng)更新為黃色衰落技術(shù)。這種方法對于用戶來說很熟悉,而工程和Ajax則加載內(nèi)容。
問題4:Ajax請求無法訪問第三方網(wǎng)站上的服務
這個對象對象位于所有Ajax請求的根部,它限制了頁面在同一域中的請求。但有時您希望通過Ajax請求訪問第三方數(shù)據(jù)。許多Web服務允許它們的數(shù)據(jù)通過API。
解決方案:使用服務器作為代理
這個問題的解決方法是在服務器和瀏覽器之間使用第三方服務代理。慈溪微信營銷雖然方案的細節(jié)遠遠超出了本文的范圍,但我們將遵循的基本原則仍在起作用。
因為Ajax請求來自客戶端的瀏覽器,所以它必須在另一個位置引用文件,但是與請求源在同一域中。