【摘要】不再东奔西跑,Ajax一网打尽你关心的博客园RSS频道。便于浏览,轻松学习。
1、Ajax源代码,
Ajax核心技术
XMLHttpRequest, XMLDocument
2、拖拽使你随意排列各个频道
3、cookie中保存排列的效果,记住你的个性
4、把JS代码粘贴到你的博客园中。实现步骤:管理->选项->configure->页脚Html代码
5、详细的注释说明,你一定看的懂
【
Ajax源代码】
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Draging,what do you see!</title>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
<meta content="XML,XMLHttpRequest,web2.0" name="keywords">
<meta name="author" content="David">
<meta name="description" content="实现类似google.com/ig的功能">

<style>

*{
}{font-size:12px}

/**//*样式class*/

.dragTable{
}{
font-size:12px;
border-top:1px solid #3366cc;
margin-bottom: 10px;
width:100%;
background-color:#FFFFFF;
}

.dragTR{
}{

cursor:move;/**//*控制当鼠标移动到该行上时显示的样式*/
color:#7787cc;
background-color:#e5eef9;
font-size:16px;
font-family:"宋体";
font-weight:bold;
letter-spacing:1px;
}

/**//*利用tagName定义样式*/

td{
}{vertical-align:top;}

/**//*#表示对id=parentTable元素的样式定义*/

#parentTable{
}{
border-collapse:collapse;
letter-spacing:25px;
}
</style>

<script language="javascript">
<!--

/**//*AJAX*/
// JavaScript Document
function echo(obj1,html)


{
$(obj1).innerHTML=html;
}
function $(id)


{
return document.getElementById(id);
}

function createXMLHttpRequest()
{
var xmlHttpObj;

if (window.ActiveXObject)
{
xmlHttpObj = new ActiveXObject("Microsoft.XMLHTTP");

}else if (window.XMLHttpRequest)
{
xmlHttpObj = new XMLHttpRequest();
}
return xmlHttpObj;
}


function parseResults(obj1,xmlHttp)
{
var results = xmlHttp.responseXML;
var item = null;
var title;
var items = results.getElementsByTagName("item");

for(var i = 0; i < items.length; i++)
{
item = items[i];
title = item.getElementsByTagName("title")[0].firstChild.nodeValue;

//clearPreviousResults();
link2=item.getElementsByTagName("link")[0].firstChild.nodeValue;
title=str(title);
addListRow(title,link2,obj1);
}
}

function readrss(url,obj)


{
var xmlHttp=createXMLHttpRequest();
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);

//xmlHttp.abort();
function handleStateChange()//FN2

{
if(xmlHttp.readyState==2)

{
echo(obj,"正在提交数据,请稍等
");
}
else if(xmlHttp.readyState==4)

{
if(xmlHttp.status==200)

{
//echo(obj,"正在提交数据,请稍等
");
clearPreviousResults(obj);
parseResults(obj,xmlHttp);

}
}
}//End FN2

}

function addListRow(title,link1,obj2)


{
//clearPreviousResults(obj2);
$(obj2).innerHTML+='<a href="'+link1+'" target="_blank" >'+title+'</a><br>';
}

function str(stri)


{
var strb;
if(stri.length>30)

{
strb=stri.substring(0,30)+'..';
}
else

{
strb=stri;
}
return strb;
}


function clearPreviousResults(obj3)
{

while($(obj3).childNodes.length > 0)
{
$(obj3).removeChild($(obj3).childNodes[0]);
}
}
//-->
</script>

<script language ="javascript" type="text/javascript">
//----设置Cookie------

function setCookie(name,value,domain)


{

var value = escape(value);

var nameString = "Drag_"+name + "=" + value; //给cookie变量增加前缀

var extime = new Date();

extime.setTime (extime.getTime () + 315360000);

var expiryString = ";expires=" + extime.toGMTString();

var domainString = "";

var pathString = ";path=/";

var setvalue = nameString + expiryString;

document.cookie = setvalue;
}

//----设置Cookie 结束------

//---读取Cookie-------

function getcookie (name)

{
var CookieFound = false;
var start = 0;
var end = 0;
var CookieString = document.cookie;
var i = 0;
name="Drag_"+name; //增加前缀
while (i <= CookieString.length)

{
start = i ;
end = start + name.length;
if (CookieString.substring(start, end) == name)

{
CookieFound = true;
break;
}
i++;
}

if (CookieFound)

{
start = end + 1;
end = CookieString.indexOf(";",start);
if (end < start)
end = CookieString.length;
var getvalue = CookieString.substring(start, end);
return unescape(getvalue);
}
return "";
}

//---读取Cookie 结束-------
//检测是否禁用了cookie

function isEnableCookie()
{

try
{
var cookie_helper = new CookieHelper("");
var test_cookie_name = "test_cookie_name";
var test_cookie_value = "test_cookie_value";
var test_cookie_value_ret = "";
cookie_helper.writeCookie(test_cookie_name,test_cookie_value);
test_cookie_value_ret = cookie_helper.getCookieValue(test_cookie_name);

if ( test_cookie_value_ret != null )
{
cookie_helper.removeCookie(test_cookie_name);
return true;

} else
{
return false;
}

} catch (error)
{
return false;
}
}


</script>

<script language="javascript" >
function init()


{

readrss('http://www.cnblogs.com/rss.aspx','div1');
readrss('http://www.cnblogs.com/beginner/rss.aspx','div2');
readrss('http://www.cnblogs.com/pick/rss.aspx','div3');
readrss('http://www.cnblogs.com/expert/rss.aspx','div4');
readrss('http://www.cnblogs.com/book/rss.aspx','div5');

setTimeout("init()","180000");
}
</script>
</head>
<body onLoad="init()">
<table border="0" cellpadding="0" cellspacing="10" width="798" height=500 id="parentTable">
<tr >
<td width="266" valign="top">
<table id ="st1" border=1 class="dragTable" cellspacing="0">
<tr><td>首页原创.NET区 div1</td></tr>
<tr><td id="div1"></td></tr