坚强的脚本回调...

<script type="text/javascript">
var callbackJS = function (param) {
 
 var charset = param.charset || 'gb2312';
 
 if (/MSIE/.test(window.navigator.userAgent)) {
  var frag = document.createDocumentFragment(), script = frag.createElement('script');
  script.charset = charset;
  frag[param.name] = function () {
   param.callback && param.callback.apply(null, arguments);
   frag = script = script.onreadystatechange = frag[param.name] = null;
  };
  script.onreadystatechange = function () {
   if (script.readyState == 'loaded') {
    param.errorcallback && param.errorcallback();
    frag = script = script.onreadystatechange = frag[param.name] = null;
   }
  };
  script.src = param.url;
  frag.appendChild(script);
 } else {
  var iframe = document.createElement('iframe');
  iframe.style.display = 'none';
  
  iframe.callback = function () {
   param.callback && param.callback.apply(null, arguments);
   iframe.callback = iframe.errorcallback = null;
   iframe.src = 'about:blank', iframe.parentNode.removeChild(iframe), iframe = null;
  };
  iframe.errorcallback = function () {
   param.errorcallback && param.errorcallback();
   iframe.callback = iframe.errorcallback = null;
   iframe.src = 'about:blank', iframe.parentNode.removeChild(iframe), iframe = null;
  };
  try {
   document.body.appendChild(iframe);
   iframe.contentWindow.document.write(
    '<script type="text//javascript">function ' + param.name + '() { window.frameElement.callback.apply(null, arguments); }<//script>'
    + '<script type="text//javascript" src="' + param.url + '" charset="' + charset + '"><//script>'
    + '<script type="text//javascript">window.setTimeout("try { window.frameElement.errorcallback(); } catch (exp) {}", 1)<//script>'
   );
   iframe.contentWindow.document.close();
  } catch (exp) {}
 }
};

window.onload = function () {
 callbackJS({
  name : '_Callback'
  , charset : 'gb2312'
  , url : 'http://b.qzone.qq.com/cgi-bin/blognew/blog_get_data?uin=185591441&numperpage=15&blogid=1200979684&arch=0&pos=0&direct=1&r=0.9963684245893007'
  , callback : function () { alert(arguments[0].data.title); }
  , errorcallback : function () { alert(0); }
 });
};
</script>

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值