用原生JavaScript實(shí)現(xiàn)jQuery的$.getJSON的解決方法
今天在寫(xiě)一DEMO,其中用到了jQuery的$.getJSON方法,寫(xiě)完后發(fā)現(xiàn)整個(gè)DEMO中用到j(luò)Query中的就這一個(gè)地方,但要引入一個(gè)jQuery實(shí)在不劃算,于是就自己實(shí)現(xiàn)了一個(gè)簡(jiǎn)單版的,基本可以滿足需求,現(xiàn)分享出來(lái):
var $ = {
getJSON: function(url, params, callbackFuncName, callback){
var paramsUrl ="",
jsonp = this.getQueryString(url)[callbackFuncName];
for(var key in params){
paramsUrl+="&"+key+"="+encodeURIComponent(params[key]);
}
url+=paramsUrl;
window[jsonp] = function(data) {
window[jsonp] = undefined;
try {
delete window[jsonp];
} catch(e) {}
if (head) {
head.removeChild(script);
}
callback(data);
};
var head = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.charset = "UTF-8";
script.src = url;
head.appendChild(script);
return true;
},
getQueryString: function(url) {
var result = {}, queryString = (url && url.indexOf("?")!=-1 && url.split("?")[1]) || location.search.substring(1),
re = /([^&=]+)=([^&]*)/g, m;
while (m = re.exec(queryString)) {
result[decodeURIComponent(m[1])] = decodeURIComponent(m[2]);
}
return result;
}
};
調(diào)用DEMO如下:
var url = "http://xxx.xxx.xxx?callback=jsonp123";
var params = {
a:1,
b:2
};
$.getJSON(url, params, "callback", function(data){
//todo
});
- JQuery 獲取json數(shù)據(jù)$.getJSON方法的實(shí)例代碼
- Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法總結(jié)
- jquery $.getJSON()跨域請(qǐng)求
- Jquery getJSON方法詳細(xì)分析
- jQuery+ajax中g(shù)etJSON() 用法實(shí)例
- JQuery中g(shù)etJSON的使用方法
- jQuery getJSON 處理json數(shù)據(jù)的代碼
- JQuery中的$.getJSON 使用說(shuō)明
- ie下jquery.getJSON的緩存問(wèn)題的處理方法
- jQuery中$.ajax()和$.getJson()同步處理詳解
- jQuery中$.get、$.post、$.getJSON和$.ajax的用法詳解
- jQuery使用getJSON方法獲取json數(shù)據(jù)完整示例
相關(guān)文章
JQuery入門(mén)—編寫(xiě)一個(gè)簡(jiǎn)單的JQuery應(yīng)用案例
首先引入JQuery文件庫(kù)只需將文件導(dǎo)入頁(yè)面中即可,即在<head></head>中,接下來(lái)詳細(xì)介紹,感興趣的朋友可以了解下2013-01-01關(guān)于頁(yè)面加載即執(zhí)行JQuery的三種方法小結(jié)
這篇文章主要介紹了關(guān)于頁(yè)面加載即執(zhí)行JQuery的三種方法小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10基于JQuery實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊文本框顯示隱藏提示文本
我們做搜索框的時(shí)候,經(jīng)常需要這樣一個(gè)效果:搜索框默認(rèn)顯示一段提示文本,比如“輸入關(guān)鍵詞”,鼠標(biāo)點(diǎn)擊后,清空這段文本。鼠標(biāo)再次點(diǎn)擊別的地方,又要恢復(fù)這段文本2012-02-02得到j(luò)Query detach()后節(jié)點(diǎn)中的某個(gè)值實(shí)現(xiàn)代碼
需要jQuery -detach 后的dom 結(jié)構(gòu)或某個(gè)值,如何獲取到呢?一直困惑著我們,不過(guò)本文將為大家解開(kāi)疑惑,感興趣的朋友可以了解下,或許本文對(duì)你有所幫助2013-02-02jquery 字符串切割函數(shù)substring的用法說(shuō)明
本篇文章主要是對(duì)jquery字符串切割函數(shù)substring的用法進(jìn)行了介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-02-02基于jQuery實(shí)現(xiàn)照片墻自動(dòng)播放特效
這篇文章主要為大家詳細(xì)介紹了基于jQuery實(shí)現(xiàn)照片墻自動(dòng)播放特效,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01jQuery中常用的遍歷函數(shù)用法實(shí)例總結(jié)
這篇文章主要介紹了jQuery中常用的遍歷函數(shù)用法,以實(shí)例形式分析并總結(jié)了jquery中常見(jiàn)的遍歷函數(shù)使用方法與注意事項(xiàng),具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09jQuery Validate表單驗(yàn)證插件實(shí)現(xiàn)代碼
這篇文章主要介紹了jQuery Validate表單驗(yàn)證插件實(shí)現(xiàn)代碼,需要的朋友可以參考下2017-06-06jQuery選擇器源碼解讀(五):tokenize的解析過(guò)程
這篇文章主要介紹了jQuery選擇器源碼解讀(五):tokenize的解析過(guò)程,本文用詳細(xì)的注釋解讀了tokenize方法的解析過(guò)程,需要的朋友可以參考下2015-03-03