📄 utilrss.js
字号:
function rssRequest(name, src, divId, division, strCut, callback) {
var div=document.getElementById(divId);
if (!div) return;
if (!_XMLHttp['rss'+name]) _XMLHttp['rss'+name]=new XMLHttp('widget/rssRedirect', rssResponse);
_XMLHttp['rss'+name].setQuery('q[url]='+escape(src));
_XMLHttp['rss'+name].setCallbackData({name: name, divId: divId, division: division, strCut: strCut, callback: callback});
_XMLHttp['rss'+name].execute();
}
function rssResponse(argument) {
var name=argument['name'];
if (!_XMLHttp['rss'+name] || !_XMLHttp['rss'+name].success()) return;
var divId=argument['divId'];
var division=argument['division'];
var strCut=argument['strCut'];
var div=document.getElementById(divId);
if (!div) return;
var tree=_XMLHttp['rss'+name].getTree();
if (!tree || !tree.channel || !tree.channel.item) return;
var item=isArray(tree.channel.item)?tree.channel.item:[tree.channel.item];
if (!name && tree.channel.title) name=tree.channel.title;
if (!division) division='<a class="rss_itle" href="{link}" target=_blank>{title}</a><span class="rss_author">{author}</span><span class="rss_pubdate">{pubdate}</span><span class="rss_description">{description}</span>';
if (typeof strCut == 'undefined' || strCut < 0) strCut=255;
for (var i=0; i < item.length; i++) {
var date=dateParse(item[i].pubdate);
var node=document.createElement('DIV');
node.time=date.getTime()/1000;
node.className='rss_item';
var html=division.replace('{author}', (item[i].author?item[i].author:'')+(name?'@<b>'+name+'</b>':''));
html=html.replace('{title}', item[i].title?item[i].title:'No title');
html=html.replace('{link}', item[i].link?item[i].link:'');
html=html.replace('{pubdate}', timestampConvert(date.getTime()/1000, 'y-m-d h:i:s'));
html=html.replace('{description}', item[i].description.wcut(strCut, '..'));
node.innerHTML=html;
rssInsertNode(div, node);
}
if (argument['callback'])
argument['callback'](argument, tree);
}
function rssInsertNode(div, node) {
if (div.childNodes.length > 0) {
for (var i=div.childNodes.length; i--;) {
if (div.childNodes[i].time > node.time) {
if (div.childNodes[i+1])
div.insertBefore(node, div.childNodes[i+1]);
else
div.appendChild(node);
return;
}
}
div.insertBefore(node, div.childNodes[0]);
}else div.appendChild(node);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -