Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
JAX 是一種與服務器交換數據的技術,可以在補充在整個頁面的情況下更新網頁的一部分。接下來通過本文給大家介紹ajax一些常用方法,大家有需要可以一起學習。
1.url:
要求為String類型的參數,(默認為當前頁地址)發送請求的地址。
2.type:
要求為String類型的參數,請求方式(post或get)默認為get。注意其他http請求方法,例如put和delete也可以使用,但僅部分瀏覽器支持。
3.timeout:
要求為Number類型的參數,設置請求超時時間(毫秒)。此設置將覆蓋$.ajaxSetup()方法的全局設置。
4.async:
要求為Boolean類型的參數,默認設置為true,所有請求均為異步請求。如果需要發送同步請求,請將此選項設置為false。注意,同步請求將鎖住瀏覽器,用戶其他操作必須等待請求完成才可以執行。
5.cache:
要求為Boolean類型的參數,默認為true(當dataType為script時,默認為false),設置為false將不會從瀏覽器緩存中加載請求信息。
6.data:
要求為Object或String類型的參數,發送到服務器的數據。如果已經不是字符串,將自動轉換為字符串格式。get請求中將附加在url后。防止這種自動轉換,可以查看 processData選項。對象必須為key/value格式,例如{foo1:"bar1",foo2:"bar2"}轉換為&foo1=bar1&foo2=bar2。如果是數組,JQuery將自動為不同值對應同一個名稱。例如{foo:["bar1","bar2"]}轉換為&foo=bar1&foo=bar2。
7.dataType:
要求為String類型的參數,預期服務器返回的數據類型。如果不指定,JQuery將自動根據http包mime信息返回responseXML或responseText,并作為回調函數參數傳遞。可用的類型如下:
xml:返回XML文檔,可用JQuery處理。
html:返回純文本HTML信息;包含的script標簽會在插入DOM時執行。
script:返回純文本JavaScript代碼。不會自動緩存結果。除非設置了cache參數。注意在遠程請求時(不在同一個域下),所有post請求都將轉為get請求。
json:返回JSON數據。
jsonp:JSONP格式。使用SONP形式調用函數時,例如myurl?callback=?,JQuery將自動替換后一個“?”為正確的函數名,以執行回調函數。
text:返回純文本字符串。
8.beforeSend:
要求為Function類型的參數,發送請求前可以修改XMLHttpRequest對象的函數,例如添加自定義HTTP頭。在beforeSend中如果返回false可以取消本次ajax請求。XMLHttpRequest對象是惟一的參數。
function(XMLHttpRequest){
this; //調用本次ajax請求時傳遞的options參數
}
9.complete:
要求為Function類型的參數,請求完成后調用的回調函數(請求成功或失敗時均調用)。參數:XMLHttpRequest對象和一個描述成功請求類型的字符串。
function(XMLHttpRequest, textStatus){
this; //調用本次ajax請求時傳遞的options參數
}
10.success:
要求為Function類型的參數,請求成功后調用的回調函數,有兩個參數。
(1)由服務器返回,并根據dataType參數進行處理后的數據。
(2)描述狀態的字符串。
function(data, textStatus){
//data可能是xmlDoc、jsonObj、html、text等等
this; //調用本次ajax請求時傳遞的options參數
}
11.error:
要求為Function類型的參數,請求失敗時被調用的函數。該函數有3個參數,即XMLHttpRequest對象、錯誤信息、捕獲的錯誤對象(可選)。ajax事件函數如下:
function(XMLHttpRequest, textStatus, errorThrown){
//通常情況下textStatus和errorThrown只有其中一個包含信息
this; //調用本次ajax請求時傳遞的options參數
}
12.contentType:
要求為String類型的參數,當發送信息至服務器時,內容編碼類型默認為"application/x-www-form-urlencoded"。該默認值適合大多數應用場合。
13.dataFilter:
要求為Function類型的參數,給Ajax返回的原始數據進行預處理的函數。提供data和type兩個參數。data是Ajax返回的原始數據,type是調用jQuery.ajax時提供的dataType參數。函數返回的值將由jQuery進一步處理。
function(data, type){
//返回處理后的數據
return data;
}
14.dataFilter:
要求為Function類型的參數,給Ajax返回的原始數據進行預處理的函數。提供data和type兩個參數。data是Ajax返回的原始數據,type是調用jQuery.ajax時提供的dataType參數。函數返回的值將由jQuery進一步處理。
function(data, type){
//返回處理后的數據
return data;
}
15.global:
要求為Boolean類型的參數,默認為true。表示是否觸發全局ajax事件。設置為false將不會觸發全局ajax事件,ajaxStart或ajaxStop可用于控制各種ajax事件。
16.ifModified:
要求為Boolean類型的參數,默認為false。僅在服務器數據改變時獲取新數據。服務器數據改變判斷的依據是Last-Modified頭信息。默認值是false,即忽略頭信息。
17.jsonp:
要求為String類型的參數,在一個jsonp請求中重寫回調函數的名字。該值用來替代在"callback=?"這種GET或POST請求中URL參數里的"callback"部分,例如{jsonp:'onJsonPLoad'}會導致將"onJsonPLoad=?"傳給服務器。
18.username:
要求為String類型的參數,用于響應HTTP訪問認證請求的用戶名。
19.password:
要求為String類型的參數,用于響應HTTP訪問認證請求的密碼。
20.processData:
要求為Boolean類型的參數,默認為true。默認情況下,發送的數據將被轉換為對象(從技術角度來講并非字符串)以配合默認內容類型"application/x-www-form-urlencoded"。如果要發送DOM樹信息或者其他不希望轉換的信息,請設置為false。
21.scriptCharset:
要求為String類型的參數,只有當請求時dataType為"jsonp"或者"script",并且type是GET時才會用于強制修改字符集(charset)。通常在本地和遠程的內容編碼不同時使用。
案例代碼:
$(function(){
$('#send').click(function(){
$.ajax({
type: "GET",
url: "test.json",
data: {username:$("#username").val(), content:$("#content").val()},
dataType: "json",
success: function(data){
$('#resText').empty(); //清空resText里面的所有內容
var html = '';
$.each(data, function(commentIndex, comment){
html += '<div class="comment"><h6>' + comment['username']
+ ':</h6><p class="para"' + comment['content']
+ '</p></div>';
});
近項目上用到了調用微信和支付寶的第三方支付接口,因為以前沒用過,所以這次用到了之后總結一下分享給大家,這里介紹兩種支付方式,即app支付和掃碼支付方式。
一、app支付(這里只介紹java端調用支付,安卓或ios端自己參考相關的調用文檔)
首先可以看一看項目支付流程(圖解)
1. 在頁面上選擇支付方式(微信或支付寶)
2. 由相應的客戶端調用相應的支付方式進入相應的支付頁面(安卓或ios調用支付接口并進入微信或支付寶支付頁面,顯示支付的信息)
3. 輸入密碼進行支付
4. 調用支付結果接口,來返回支付成功與否
四圖分別是選擇支付方式、微信支付頁面、支付寶支付頁面、微信支付結果(成功)頁面
也是基本的支付三個步驟。
一、先看微信支付:
在調用微信支付之前你應該已經下單成功(即訂單信息入庫成功),這里需要幾個值:
OrderName(訂單名稱),orderNumber(訂單編號,唯一),amount(金額), prepayId(交易會話id)
前三個參數直接從數據庫里獲取。prepayid是什么?可以具體看微信支付文檔,我們可以從下單接口中返回獲得這個會話id并且需要入庫,這個參數最重要的作用是用于第一次我們沒有支付,但已經生成了一個待支付的訂單。這種情況下我們不需要再次去調用下單接口返回prepayId,因為我們已經生成過了這個值
下面看手機端頁面的js代碼:
“Web 可訪問性”一詞定義了一組開發人員需要遵循的準則,以使Web應用程序的交互更加方便。任何網站的內容、UI/UX 設計和布局都應該是可訪問的。在這篇文章中,我們研究了前端團隊可以做些什么來輕松地將他們的網站提升到適合Web可訪問性的標準。
保持標記清潔
無論你使用什么標記,都要正確整齊地構建它,避免跳過關卡。例如,在HTML中使用 <button> 元素而不是 <span> 或 <div>。使用 <nav> 進行導航,使用 <button> 進行頁面操作。
將 <strong> 或 <em> 元素與 <bold> 或 <i> 區分開來。前兩者用于對內容的語義強調,后兩者用于視覺強調。
l 確保橫幅中的公司徽標鏈接回網站的主頁。
l 使用 <lang> 屬性告訴瀏覽器在網站上使用哪種語言。
l 如果你想在視覺上和屏幕閱讀器中隱藏內容,請使用 hidden 屬性。
l 為長頁面添加錨鏈接(跳轉鏈接),以便用戶可以跳過他們不需要的內容并繼續相關部分。
注意頁面語義
用戶和機器(屏幕閱讀器、盲文顯示器)都應該能夠識別頁面結構。通過使用頁面上的分段(<header>、<footer>、<article>、<nav>)和標題元素來創建語義布局。這有助于定義網頁的清晰層次輪廓,并區分主要(主要:<h1>、<h2>、<article>)和次要(不太重要:<h3> - <h6>、<footer>)內容。
當你在頁面中使用標題時,不要使用格式(字體樣式和大小)偽造標題屬性 (<h>) 的實際標記,因為這不允許輔助技術識別這些是標題。
在適當的情況下在網頁中使用 ARIA 地標。ARIA(可訪問的富 Internet 應用程序)是一個綜合技術規范,用于將可訪問性信息添加到本地不可訪問的元素(特別是使用 JavaScript、AJAX 和 DHTML 開發的元素)。使用 ARIA 地標,開發人員可以擴展 HTML 功能并將適當的語義(即屬性)應用到 UI 和內容元素,以便輔助技術理解這些。
這是一個 HTML 語義元素(<header>、<nav>、<main>、<footer>)如何與 ARIA 角色屬性(“banner”、“navigation”、“main”、“contentinfo”)組合的示例使用戶更容易使用屏幕閱讀器進行網站導航。
盡管大多數 ARIA 功能最近都是在 HTML5 中實現的(你絕對應該喜歡這些!),但并非所有屏幕閱讀器和瀏覽器(例如 IE)都足夠復雜,僅依賴于 HTML 語義。適當使用 ARIA 的一些示例是分配角色來描述某些類型的小部件(“菜單”、“樹項”、“滑塊”),定義描述拖放源和放置目標的拖放屬性,以及添加警報以通知有關動態頁面更改的輔助技術。
支持標簽導航
使元素的 Tab 順序(也稱為文檔對象模型或 DOM 順序)與視覺順序一致。從 Tab 順序中刪除不必要的元素,以免混淆使用 Tab 或輔助設備導航的用戶。
使導航元素的焦點可見。你可以為此使用第三方插件或 <outline> 屬性,該屬性為在選項卡式導航(或其替代方案)時具有焦點的頁面元素和鏈接提供視覺反饋。
使用 <tabindex> 屬性可以使鏈接、按鈕和表單字段等元素具有焦點,并且可以通過 Enter 鍵和/或空格鍵進行選擇。即使具有 <tabindex> 屬性和 0 整數值的不可聚焦元素也可以成為可聚焦元素,例如<h3 tabindex="0">一個可聚焦的標題</h3>
如果頁面上有彈出窗口,導航優先級應該允許首先關閉它們。完成此操作后,理想情況下,焦點應該跳回到用戶被打開的模式窗口打斷的網頁元素。為此,請將最后一個焦點元素存儲在變量中。
為圖像添加替代文本
屏幕閱讀器幾乎可以訪問頁面上的所有內容——圖形信息除外。所以不要忘記為圖像和其他圖形添加替代文本(<img> alt 屬性)。這不僅可以幫助使用輔助技術“閱讀”屏幕的人,還可以幫助互聯網連接不佳的用戶。你的網站也將使用圖像替代文本進行 SEO 優化。在Web前端培訓中,不僅有理論知識的課程,也會有實操項目的訓練,讓你深入淺出地學習前端技術,彌補項目經驗的空缺。
圖像替代文本應該精確、簡潔,并反映添加圖像的主要目的。根據上下文,相同的圖像可能有不同的替代文本,例如 如果將公司徽標放在標題中并將用戶返回到主頁,則其準確的替代文本可能是`<img alt="Company X logo - Home page.">`
l 在替代文本中,避免使用多余的“圖像”或“圖像”——無論哪種方式,輔助技術都會警告用戶有圖像。
l 以句點結束替代文本。這將使屏幕閱讀器在 alt 文本中的最后一個單詞之后暫停一點,從而為用戶提供更愉快的體驗。
l 具有多個可點擊區域的圖像(例如圖像地圖)的替代文本應提供這些鏈接的完整描述。此外,每個可點擊區域都應該有相應的替代文本來描述其目的或目的地。
l 避免使用文字圖片;如果你不能沒有它們,替代文本應該包含與圖像中相同的單詞。
l 如果你有多個圖像傳達一條信息,則組中第一張圖像的替代文本應包含整個組的信息。
l 要熟悉替代文本的普遍接受標準,你可以隨時查看此替代文本決策樹。
雖然必須為所有對理解內容很重要的圖像添加替代文本,但對于與內容沒有直接關系的菜單圖標或裝飾性圖像(如封面)則無需這樣做。對于這樣的圖像,只需使用一個空的 <img alt> 屬性。
最后技巧
盡管這些提示肯定會增加你網站的包容性,但最好不要將 Web可訪問性視為一套正式的指南。首先,它是一項全面的策略,可以關心所有用戶并使你的網站內容可供他們使用——無論他們使用何種瀏覽器、互聯網提供商或輔助設備。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。