jsonp的封装
(function(root){ root["jsonp"]=function(o){ if(typeof(o)!=="object") return; var url=o.url, callback=((typeof(o.callback)==="string")&&o.callback)||"callback", callbackfn=((typeof(o.callbackfn)==="string")&&o.callbackfn)||("myfn"+parseInt(new Date().getTime()*Math.random())), callbackdone=((typeof(o.callbackdone)==="function")&&o.callbackdone)||new Function, data=o.data, script=document.createElement("script"); url+=dealData(data); url+=(url.indexOf("?")>-1) ? "&" : "?"; url+=callback+"="+callbackfn+"&_="+new Date().getTime(); script.src=url; root[callbackfn]=function(){ var arg=arguments; if(root.navigator.userAgent.toLowerCase().indexOf("msie")>-1){ script.onreadystatechange=function(){ if(script.readyState=="loaded"||script.readyState=="complete"){ callbackdone.apply(null,arg); script.parentNode.removeChild(script); } } }else{ script.onload=function(){ callbackdone.apply(null,arg); script.parentNode.removeChild(script); } } } document.getElementsByTagName("head")[0].appendChild(script); function dealData(s){ if(s==undefined||s==""||s==null) return ""; if(typeof(s)=="string") return "?"+s; if(typeof(s)=="object"){ var x,newstr=""; for(var x in s){ newstr+= x+"="+s[x]+"&"; } return newstr=="" ? "" : "?"+newstr.substring(0,newstr.lastIndexOf("&")); } } } })(window)
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。