This commit is contained in:
2022-05-28 09:55:02 +08:00
commit 892c7889a1
45 changed files with 10845 additions and 0 deletions

220
index_files/ajax.js Normal file
View File

@@ -0,0 +1,220 @@
//创建XMLHTTP对象
function createXMLHttpRequest()
{
var xmlHttp = null;
try{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e)
{
try{
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try{
xmlHttp = new XMLHttpRequest();
}catch(e){
}
}
}
return xmlHttp;
}
//请求链接
//url: 请求地址
//fun回调函数
function startRequest(url, fun,xmlHttp)
{
xmlHttp.onreadystatechange = fun;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
//获得xml子节点
//father父节点
//name子节点名称
//如果获得则返回节点没有则返回null
function getXmlChild(father, name)
{
var es = father.getElementsByTagName(name);
if(es.length == 0)
return null;
else
return es[0];
}
String.prototype.trim = function()
{
// 用正则表达式将前后空格
// 用空字符串替代。
var t = this.replace(/(^\s*)|(\s*$)/g, "");
return t.replace(/(^ *)|( *$)/g, "");
}
//获得xml节点值
//father父节点
//name子节点名称
//defaultvalue默认值
//如果获得则返回节点值没有则返回defaultvalue
function getXmlData(father, name, defaultvalue)
{
var es = father.getElementsByTagName(name);
if(es.length == 0)
return defaultvalue;
else if(es[0].firstChild == null)
return defaultvalue;
else
{
for(var i=0;i<es[0].childNodes.length;i++){
var node = es[0].childNodes[i];
if(node.nodeValue != null && node.nodeValue.trim() !="")
{
return node.nodeValue;
}
}
return defaultvalue;
}
}
//把"转换为&quot;
function escapeForValue(str)
{
return str.replace(/\"/g, "&quot;");
}
//用来实现文章的计数
function getClickTimes(newsid, owner,type,randomid) {
var url = '/system/resource/code/news/click/clicktimes.jsp';
if(!type) type="wbnews";
if(!randomid)
{
randomid="n";
}else
{
randomid="n"+randomid;
}
var xmlHttp = createXMLHttpRequest();
var url = url+"?wbnewsid="+newsid+"&owner="+owner+"&type="+type+"&randomid="+randomid;
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = function(){onGetClickTimes(xmlHttp);};
xmlHttp.send(null);
}
function _getBatchClickTimes(newsid, owner,type,randomid) {
var url = '/system/resource/code/news/click/batchclicktimes.jsp';
if(!type) type="wbnews";
if(!randomid)
{
randomid="n";
}else
{
randomid="n"+randomid;
}
var wbnewsids = newsid.split(",");
var isshow = false;
for(var i = 0; i < wbnewsids.length; i++)
{
var obj = document.getElementById(randomid+wbnewsids[i]);
if(obj != null)
isshow = true;
}
if(isshow)
{
var xmlHttp = createXMLHttpRequest();
var url = url+"?wbnewsid="+newsid+"&owner="+owner+"&type="+type+"&randomid="+randomid;
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = function(){_onGetBatchClickTimes(xmlHttp);};
xmlHttp.send(null);
}
}
//用来实现文章的计数
function _onGetBatchClickTimes(originalRequest)
{
if(originalRequest.readyState == 4 && originalRequest.status == 200)
{
var str = originalRequest.responseText;
var json = eval("("+str+")");
for(var i = 0; json != null && i < (json.length?json.length:1);i++)
{
var objid =json.length?(json[i].randomid+json[i].wbnewsid):(json.randomid+json.wbnewsid);
var spanobj = document.getElementsByName(objid);
if(spanobj.length > 0)
{
for(var j=0; j<spanobj.length;j++)
{
spanobj[j].innerHTML = json[i].clicktime;
}
}
}
}
}
//用来实现文章的计数
function onGetClickTimes(originalRequest)
{
if(originalRequest.readyState == 4 && originalRequest.status == 200)
{
var str = originalRequest.responseText;
var json = eval("("+str+")");
for(var i = 0; json != null && i < (json.length?json.length:1);i++)
{
var objid = json.length?(json[i].randomid+json[i].wbnewsid):(json.randomid+json.wbnewsid);
var objs = document.getElementsByTagName("span");
if(objs.length > 0)
{
for(var j=0; j<objs.length;j++)
{
if(objid==objs[j].id)
objs[j].innerHTML = json.length?json[i].wbshowtimes:json.wbshowtimes;
}
}
}
}
}
function addClickTimes(urlid,owner,type){
var url = '/system/resource/code/news/click/addclicktimes.jsp';
var xmlHttp = createXMLHttpRequest();
var url = url+"?wburlid="+urlid+"&owner="+owner+"&type="+type;
xmlHttp.open("GET", url, true);
xmlHttp.onreadystatechange = function(){};
xmlHttp.send(null);
}
loadXML = function(xmlString){
var xmlDoc=null;
//判断浏览器的类型
//支持IE浏览器
if(!window.DOMParser && window.ActiveXObject){ //window.DOMParser 判断是否是非ie浏览器
var xmlDomVersions = ['MSXML.2.DOMDocument.6.0','MSXML.2.DOMDocument.3.0','Microsoft.XMLDOM'];
for(var i=0;i<xmlDomVersions.length;i++){
try{
xmlDoc = new ActiveXObject(xmlDomVersions[i]);
xmlDoc.async = false;
xmlDoc.loadXML(xmlString); //loadXML方法载入xml字符串
break;
}catch(e){
}
}
}
//支持Mozilla浏览器
else if(window.DOMParser && document.implementation && document.implementation.createDocument){
try{
/* DOMParser 对象解析 XML 文本并返回一个 XML Document 对象。
* 要使用 DOMParser使用不带参数的构造函数来实例化它然后调用其 parseFromString() 方法
* parseFromString(text, contentType) 参数text:要解析的 XML 标记 参数contentType文本的内容类型
* 可能是 "text/xml" 、"application/xml" 或 "application/xhtml+xml" 中的一个。注意,不支持 "text/html"。
*/
domParser = new DOMParser();
xmlDoc = domParser.parseFromString(xmlString, 'text/xml');
}catch(e){
}
}
else{
return null;
}
return xmlDoc;
}