熱門(mén)標簽
- 順河街網(wǎng)站設計公司
- 界頭網(wǎng)站設計制作
- 鴨鴿營(yíng)網(wǎng)站設計
- 孟連制作網(wǎng)頁(yè)
- 劉圩網(wǎng)頁(yè)設計公司
- 柞市網(wǎng)站設計公司
- 香隅營(yíng)銷(xiāo)型網(wǎng)站建設
- 越秀網(wǎng)頁(yè)設計
- 林沖外貿網(wǎng)站建設
- 土坪網(wǎng)絡(luò )營(yíng)銷(xiāo)
- 鯉魚(yú)塘外貿網(wǎng)站建設
- 現在做得好的室內設計網(wǎng)站
- 實(shí)體店鋪裝修設計網(wǎng)站
- 省新網(wǎng)站開(kāi)發(fā)
- 七道嶺網(wǎng)站優(yōu)化
- 平面設計的兼職網(wǎng)站都有什么區別
- 屈子祠網(wǎng)站推廣
- 舊口網(wǎng)站定制
- 灌陽(yáng)鎮網(wǎng)站優(yōu)化
- 赤石高端網(wǎng)站建設
五個(gè)常見(jiàn)Ajax問(wèn)題的解決方案
在本文中,我們將討論并解決深圳網(wǎng)站設計**常見(jiàn)的五個(gè)挑戰。雖然這五個(gè)主題都有很多討論和研究,但這個(gè)職位應該給初學(xué)者和中級Ajax開(kāi)發(fā)人員一些扎實(shí)的技能,使他們能夠以更方便和易懂的方式實(shí)現Ajax功能。問(wèn)題1:當內容不向后兼容時(shí),不為禁用的JavaScript瀏覽器指定由設計增強為網(wǎng)站的體系結構JavaScript和Ajax。JavaScript和Ajax網(wǎng)站的錯誤是什么,而JavaScript的考慮應該是規劃過(guò)程的一部分。但仍應確保網(wǎng)站向后兼容。解決方案:實(shí)現Ajax是對已經(jīng)運行的網(wǎng)站的增強,盡管Ajax可能會(huì )規劃您的網(wǎng)站總體架構,確保所有內容都可以通過(guò)常規的服務(wù)器端方法。假設你有一個(gè)“一;員工信息;頁(yè)面上,每個(gè)員工都有一個(gè)單獨的鏈接。使用服務(wù)器端技術(shù),可以根據查詢(xún)字符串的值顯示特定員工的內容,以便:
上面所有的鏈接指向同一個(gè)頁(yè)面,并在“的;“雇員”和;并根據變量查詢(xún)字符串。每個(gè)員工的信息都將從服務(wù)器加載,有很多方法可以做到:通過(guò)服務(wù)器端;通過(guò)數據庫;均勻使用XML。無(wú)論何時(shí)單擊employee鏈接,都會(huì )傳遞作為請求加載的信息。因此,任何Ajax增強層之上的內容是完全可能的。然后,使用JavaScript,整頁(yè)刷新可以中斷并加載內容,而不是Ajax。單擊鏈接以通過(guò)ID或通過(guò)檢查錨點(diǎn)的href屬性的值來(lái)確定。盡管內容已完全禁用JavaScript,但大多數用戶(hù)將看到增強的Ajax驅動(dòng)程序版本。Ajax的逐漸增強原理是眾所周知的,因為它是一種常見(jiàn)的JavaScript技術(shù)和固有的CSS,如下圖所示:
因此,構建網(wǎng)站而不使用JavaScript,然后添加JavaScript作為增強功能,就像放置HTML內容然后“添加”一樣;加強“和;和CSS。問(wèn)題2:-瀏覽器負載指示器不會(huì )通過(guò)Ajax請求觸發(fā)幾乎所有瀏覽器。直觀(guān)地向用戶(hù)顯示的內容之一是加載。在當前瀏覽器中,指示標簽上顯示的加載內容。下圖顯示了幾個(gè)流行瀏覽器中的動(dòng)畫(huà)指示器。
問(wèn)題是請求沒(méi)有觸發(fā)這個(gè)“0.001”請求;加載“和”;指示器,內置瀏覽器。
解決方案:在內容附近插入一個(gè)類(lèi)似的加載指示器,加載這個(gè)常見(jiàn)的解決方案是請求一個(gè)定制的進(jìn)度指示器Ajax。許多網(wǎng)站提供免費“和;加載“和”;圖形。
要實(shí)現自定義加載圖形或漸進(jìn)指示器,您網(wǎng)站功能Ajax只是一件簡(jiǎn)單的事情,可以在適當的時(shí)間顯示和隱藏它,通過(guò)JavaScriptAjax代碼將包含一行代碼,這些代碼將告訴您請求是否正在進(jìn)行或完成。使用JavaScript,您可以在處理請求時(shí)顯示動(dòng)畫(huà)圖形,并在操作完成后隱藏它。
問(wèn)題3:用戶(hù)不知道Ajax請求已經(jīng)完成,這與之前的問(wèn)題類(lèi)似,但往往被忽略,因為開(kāi)發(fā)人員可能認為“消失”請求未完成;加載rdquo;指標可以通知用戶(hù)內容已完全加載。但是在大多數情況下,它顯示的內容已經(jīng)更新或刷新得更好。解決方案:使用唯一的“1”;請求完成;這可以通過(guò)提交這樣的表格來(lái)確認。在聯(lián)系提交挖掘機的頁(yè)面上,請明確地知道您的提交已收到:Digg的表單提交指示器。雖然該指標沒(méi)有表明Ajax請求已完成,但原則相同:“Digg;成功;對話(huà)框出現后,將加載提交表單的頁(yè)面,該框顏色豐富,不同。類(lèi)似的圖形或指示器可以用于A(yíng)jax請求,以告知用戶(hù)內容已更新。這是除了執行之外,而不是進(jìn)度指標提出的以前的問(wèn)題。一種類(lèi)似但微妙的方法,顯示區域的內容已經(jīng)用淡出技術(shù)更新。這種方法在工程和Ajax加載內容時(shí),用戶(hù)都很熟悉。
問(wèn)題4:#Ajax請求無(wú)法訪(fǎng)問(wèn)第三方網(wǎng)站的服務(wù)對象。這是所有Ajax請求的根。它限制在同一域中發(fā)送請求的頁(yè)面。但是有時(shí),當您想通過(guò)Ajax請求訪(fǎng)問(wèn)第三方數據時(shí)。許多Web服務(wù)通過(guò)ApI提供數據。解決方案:將服務(wù)器用作代理。解決此問(wèn)題的方法是在服務(wù)器和瀏覽器之間使用第三方服務(wù)代理。雖然該方案的細節遠遠超出了本文的范圍,但我們將討論工作中的基礎知識。由于A(yíng)jax請求來(lái)自客戶(hù)端瀏覽器,因此它必須引用另一個(gè)位置的文件,但與請求源所在的域相同。
您的服務(wù)器,但與客戶(hù)端的瀏覽器不同,它不會(huì )以這種方式受到限制。因此,當調用服務(wù)器上的頁(yè)面時(shí),它會(huì )在后臺運行,因為它通常同時(shí)訪(fǎng)問(wèn)任何域。用戶(hù)沒(méi)有安全風(fēng)險,因為第三方服務(wù)的請求在您的服務(wù)器上。因此,一旦在服務(wù)器級別獲得信息,則Ajax調用中的下一步是將響應返回給客戶(hù)機,該客戶(hù)端將包括從第三方Web服務(wù)獲得的數據。
問(wèn)題5:#深度鏈接不可用。這是一個(gè)棘手的問(wèn)題,但它不能依賴(lài)于您的網(wǎng)站或應用程序類(lèi)型需求。當有問(wèn)題時(shí),內容通過(guò)Ajax加載,然后“如果有問(wèn)題,內容通過(guò)Ajax加載”“國家”網(wǎng)站是不指向頁(yè)面的URL更改的效果。如果用戶(hù)通過(guò)與朋友共享的書(shū)簽或鏈接返回頁(yè)面,更新的內容將不會(huì )自動(dòng)顯示。網(wǎng)站將返回其原始狀態(tài)Flash網(wǎng)站有相同的問(wèn)題:它們不允許用戶(hù)鏈接到任何初始屏幕。解決方案:使用內部頁(yè)面的錨定來(lái)確保特定的“0”“國家”;一個(gè)Ajax驅動(dòng)Web鏈接和書(shū)簽,您可以使用頁(yè)內鏈接修改URL,而不刷新頁(yè)面或影響其垂直位置。這個(gè)簡(jiǎn)單的代碼演示了如何做到這一點(diǎn):無(wú)功currentanchor =文件位置currentanchor =字符串(當前anchor);當前anchor=當前anchor.Division(quo#rdquo;)如果(當前)anchor。長(cháng)度gt;1) {當前anchor=當前anchor;}{其他當前anchor=當前anchor;}開(kāi)關(guān)(電流anchor){案rdquo);論文**節為“**節”/加載1節內容中斷案rdquo;ldquo;rdquo;:/荷載內容分為2段;案例研究;部分:以上不是一個(gè)功能塊代碼,而是一個(gè)理論例子來(lái)證明所涉及的主要步驟。代碼的前兩行將變量放在當前頁(yè)面位置(URL)。然后,位置被轉換成一個(gè)我們可以操縱的字符串。接下來(lái),我們想了解更多關(guān)于它的信息;分部;通過(guò)錨定標記(#)將字符串分成兩部分,然后查看數組,通過(guò)拆分創(chuàng )建多個(gè)項。大于一的錨意味著(zhù)URL。如果URL只是部分的,則表示沒(méi)有錨定。以下“1;道岔;語(yǔ)句的內容基于語(yǔ)句中的錨定值switch;默認情況下;選項,如果不存在錨定,則這將與以其原始狀態(tài)加載頁(yè)面相同。此外,我們將編寫(xiě)代碼來(lái)處理通過(guò)內部錨直接指向特定內容的鏈接。一個(gè)鏈接,指向“;內容;它將發(fā)表在“;內容的內容加載,以及“內容加載”字符串#內容;將附加到當前頁(yè)的URL。這將添加一個(gè)內部錨點(diǎn)更改URL,它不會(huì )更改頁(yè)面的視圖,但保留一個(gè)指示頁(yè)面所需狀態(tài)的標識符。這個(gè)解釋只是理論。工作的理念,很管用。但我沒(méi)有說(shuō)所有的可能性,缺點(diǎn)和其他微妙的這種網(wǎng)站或網(wǎng)絡(luò )建設。請關(guān)注更全面的討論、下面的鏈接或自己嘗試。另外,請注意,這可用于更改單獨測試JavaScript的內容,而不使用Ajax。
牧羊人設計
系統設計過(guò)程
集團網(wǎng)站建設欄目設置及集團公司網(wǎng)站建設方案
Web 設計
http://ezekroy.com/jianzhanzhishi/1354.html 五個(gè)常見(jiàn)Ajax問(wèn)題的解決方案