asp实现dig功能的js代码

时间:2022-06-01 18:25:48
  1. //ajax 控件  
  2. function DiggAjax(){  
  3.     var xhrObj=null;  
  4.     if(window.XMLHttpRequest){  
  5.         xhrObj=new XMLHttpRequest();  
  6.     }  
  7.     else if(window.ActiveXObject){  
  8.     try{  
  9.     xhrObj=new ActiveXObject("Microsoft.XMLHTTP");  
  10.     }  
  11.     catch(e1)  
  12.     {  
  13.     try{  
  14.     xhrObj=new ActiveXObject("MSXML2.XMLHTTP");  
  15.     }  
  16.     catch(e2){  
  17.     try{  
  18.     xhrObj=new ActiveXObject("MSXML3.XMLHTTP");  
  19.     }  
  20.     catch(e3){  
  21.     alert("创建Ajax失败:"+e3)  
  22.     }  
  23.     }  
  24.     }  
  25.     }  
  26.     else  
  27.     {  
  28.     alert("未能识别的浏览器");  
  29.     }  
  30.     return xhrObj;  
  31. }  
  32. var loader=new DiggAjax;  
  33. function ajaxLoadPage(url,request,method,fun)  
  34. {   
  35.     method=method.toUpperCase();  
  36.     if (method=='GET')  
  37.     {  
  38.         urls=url.split("?");  
  39.         if (urls[1]=='' || typeof urls[1]=='undefined')  
  40.         {  
  41.             url=urls[0]+"?"+request;  
  42.         }  
  43.         else  
  44.         {  
  45.             url=urls[0]+"?"+urls[1]+"&"+request;  
  46.         }  
  47.  
  48.         request=null;  
  49.     }  
  50.     loader.open(method,url,true);  
  51.     if (method=="POST")  
  52.     {  
  53.         loader.setRequestHeader("Content-Type","application/x-www-form-urlencoded");  
  54.     }  
  55.     loader.onreadystatechange=function(){  
  56.          eval(fun+'()');  
  57.     }  
  58.     loader.send(request);  
  59.  }  
  60.  function callbacks()  
  61.   {  
  62.   if (loader.readyState==4)  
  63.   {  
  64.     var s=loader.responseText;  
  65.     switch (s)  
  66.     {  
  67.         case "err":  
  68.          alert('digg error!');  
  69.          break;  
  70.         case "over":  
  71.          alert('你已推荐过了!');  
  72.          break;  
  73.         case "nologin":  
  74.           alert('您还没有登录,不能推荐!');  
  75.           break;  
  76.         default:  
  77.            var sarr=s.split('|');  
  78.            eval("document.all.s"+sarr[0]).innerHTML=sarr[1];  
  79.            eval("document.all.d"+sarr[0]).innerHTML="Thanks";  
  80.  
  81.     }  
  82.  
  83.     }  
  84.   }  
  85.  
  86.  
  87. //Digg  
  88. function digg(channelid,infoid,installdir)  
  89. {  
  90.   ajaxLoadPage(installdir+'plus/digg.asp','action=hits&ChannelID='+channelid+'&infoid=' +infoid,'post','callbacks');  
  91.  
  92. }  
  93. function show_digg(channelid,infoid,installdir)  
  94. {   
  95.    var xhr=new DiggAjax();  
  96.    xhr.open("get",installdir+"plus/digg.asp?channelid="+channelid+"&infoid="+infoid+"&action=show",true);  
  97.    xhr.onreadystatechange=function (){  
  98.              if(xhr.readyState==1)  
  99.               {  
  100.                 eval("document.all.s"+infoid).innerHTML="<img src='"+installdir+"images/loading.gif'>";  
  101.               }  
  102.               else if(xhr.readyState==2 || xhr.readyState==3)  
  103.               {  
  104.                 eval("document.all.s"+infoid).innerHTML="<img src='"+installdir+"images/loading.gif'>";  
  105.               }  
  106.               else if(xhr.readyState==4)  
  107.               {  
  108.              if (xhr.status==200)  
  109.              {     
  110.                   var r=xhr.responseText  
  111.                   var rarr=r.split('|');  
  112.                   eval("document.all.s"+infoid).innerHTML=rarr[1];  
  113.              }  
  114.             }  
  115.        }  
  116.     xhr.send(null);