要解決ajax跨域問題,網上給出的方法有二:
1是構建服務器端的代理。簡而言之,就是ajax中調用的實質還是本機的url,而服務器端替js去取回遠端地址。
2.利用script標記,生成一個標簽。在js加載完成後,再執行後續操作。
就是將原來新建xmlHTTPrequest對象的操作改成了新建script標簽的操作.
這裡給出一個例子:
#ajah.js
var Ajah=function(url,varname,handleSuccess,handleFailure){
/**
* handleSuccess,handleFailure must be functions
* */
script = document.createElement("script");
script.src=url;
var handler = function(str)
{
handleSuccess(str);
}
script.onload = function()
{
var json=eval(varname);
handler(json);
}
if(window.ie)
{
script.onreadystatechange = function()
{
if(script.readyState=='complete'||script.readyState== 'loaded')
{
var json=eval(varname);
if(typeof json != 'undefined')
{
handler(json);
&nb