document.write('

 解析:

最简单的 Jsonp 实现方式如下。
var Jsonp = document.createElement("script") ;
//Firefox:onload IE:onreadystatechange
Jsonp.onload = Jsonp.onreadystatechange = function(){
 //onreadystatechange,仅 IE
 if (!this.readyState || this.readyState === "loaded" ||
 this.readyState === "complete") {
 alert($("#demo").html());
 Jsonp.onload = Jsonp.onreadystatechange = null// 清理
 防止 IE memory leaks
 }
}
Jsonp.type = "text/javascript";
Jsonp.src = "http://www.qdjhu.com/2010/JS/jQuery.JS";
// 在 head 之后添加 JS 文件
document.getElementsByTagName("head")[0].appendChild(Jsonp);
简单解释 :我们通过创建 script,指定它的 src 等属性,然后插入 head 执行。
建议 onload、onreadystatechange 写在 src 赋值之前,防止载入 JavaScript 太快而没
有给 onload、onreadystatechange 赋值(Image 对象在 IE 下具有此类现象)。
Jsonp 实例:
首先我们可以定义一个函数来执行 Jsonp 返回的数据,然后通过 Jsonp 的
src 传此函数给后台,进行处理,返回可执行的函数。例如下面代码:
function JsonpHandle(a){
 alert(a);
}
var Jsonp=document.createElement("script") ;
Jsonp.type="text/javascript";
Jsonp.src = http://www.qdjhu.com/Jsonp.php?callback=JsonpHandle";
// 在 head 之后添加 JavaScript 文件
document.getElementsByTagName("head")[0].appendChild(Jsonp);
后台 Jsonp.php 的代码:
echo $_GET["callback"]."(\'hello,world\')";
');