首页 / 网页编程 / ASP / asp实现dig功能的js代码
//ajax 控件
function DiggAjax(){
var xhrObj=null;
if(window.XMLHttpRequest){
xhrObj=new XMLHttpRequest();
}
else if(window.ActiveXObject){
try{
xhrObj=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e1)
{
try{
xhrObj=new ActiveXObject("MSXML2.XMLHTTP");
}
catch(e2){
try{
xhrObj=new ActiveXObject("MSXML3.XMLHTTP");
}
catch(e3){
alert("创建Ajax失败:"+e3)
}
}
}
}
else
{
alert("未能识别的浏览器");
}
return xhrObj;
}
var loader=new DiggAjax;
function ajaxLoadPage(url,request,method,fun)
{
method=method.toUpperCase();
if (method=="GET")
{
urls=url.split("?");
if (urls[1]=="" || typeof urls[1]=="undefined")
{
url=urls[0]+"?"+request;
}
else
{
url=urls[0]+"?"+urls[1]+"&"+request;
}
request=null;
}
loader.open(method,url,true);
if (method=="POST")
{
loader.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
}
loader.onreadystatechange=function(){
eval(fun+"()");
}
loader.send(request);
}
function callbacks()
{
if (loader.readyState==4)
{
var s=loader.responseText;
switch (s)
{
case "err":
alert("digg error!");
break;
case "over":
alert("你已推荐过了!");
break;
case "nologin":
alert("您还没有登录,不能推荐!");
break;
default:
var sarr=s.split("|");
eval("document.all.s"+sarr[0]).innerHTML=sarr[1];
eval("document.all.d"+sarr[0]).innerHTML="Thanks";
}
}
}
//Digg
function digg(channelid,infoid,installdir)
{
ajaxLoadPage(installdir+"plus/digg.asp","action=hits&ChannelID="+channelid+"&infoid=" +infoid,"post","callbacks");
}
function show_digg(channelid,infoid,installdir)
{
var xhr=new DiggAjax();
xhr.open("get",installdir+"plus/digg.asp?channelid="+channelid+"&infoid="+infoid+"&action=show",true);
xhr.onreadystatechange=function (){
if(xhr.readyState==1)
{
eval("document.all.s"+infoid).innerHTML="<img src=""+installdir+"images/loading.gif">";
}
else if(xhr.readyState==2 || xhr.readyState==3)
{
eval("document.all.s"+infoid).innerHTML="<img src=""+installdir+"images/loading.gif">";
}
else if(xhr.readyState==4)
{
if (xhr.status==200)
{
var r=xhr.responseText
var rarr=r.split("|");
eval("document.all.s"+infoid).innerHTML=rarr[1];
}
}
}
xhr.send(null);
}