xmlhttp.js

来自「Ajax技术实现网页内容灵活设置,很有用哦!」· JavaScript 代码 · 共 86 行

JS
86
字号
// JavaScript Document
function echo(obj1,html)
{
	$(obj1).innerHTML=html;
}
function $(id)
{
	return document.getElementById(id);	
}
var xmlHttp;
function createXMLHttpRequest() {
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} 
else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
}
function parseResults(obj1) {
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)
{ 

createXMLHttpRequest()
xmlHttp.onreadystatechange = handleStateChange;
xmlHttp.open("GET", url, true);
xmlHttp.send(null);
//xmlHttp.abort();
function handleStateChange()
{
	if(xmlHttp.readyState==2)
	{
		echo(obj,"正在提交数据,请稍等......");

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

}
}
}
}

function addListRow(test,link1,obj2)
{
//clearPreviousResults(obj2);
$(obj2).innerHTML+='<a href="'+link1+'" target="_blank" >'+test+'</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]);
}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?