2007/07/27

[技術系]   RSSリーダーを簡単にHTMLアプリケーションでつくる32の方法

at 05:54JST
 
タイトルはバカっぽい感じにしてみただけです。

Google AJAX Feed APIを使ってシンプルなガジェット型RSSリーダーを作成する方法(Windows only) - F.Ko-Jiの「一秒後は未来」
http://blog.fkoji.com/2007/07262155.html

↑を読んで思ったんだけど…壁紙にすることはできないが、ガジェット的なRSSリーダーをWindowsで作るなら、拡張子を.htaにしたHTMLファイルでいにしえの「HTMLアプリケーション」を作成したほうがいい気がする。Googleなんぞの世話にならずとも済む。

↓は1年くらいまえに適当につくったもの。御用新聞サイトの「イザ!」がチームラボかどっかにわざわざカネ払ってRSSリーダーを開発させて配り始めたので、「こんなのカネ払う意味も配る意味もないじゃんよ」と対抗意識燃やしてデッチあげたやつ。ヘンなところでmarquee使ってるうえに未完成だが。やりたいことはわかると思われ。

きちんとしたアプリケーションっぽくシングルインスタンスなうえ、タスクバーにも現れません。

20070727mage1.png


いまの時代を予見するような技術を10年前に実装するとは。さすがゲイツさま! 一生ついていきます。再発見されたJavaScriptのように、ここからHTAのブームが起きることをキボンヌ。なに!? Vistaでは動かない!?(未確認)

ま、F.Koji氏流に言うなら「一秒後は未来」ならぬ
「十年前は未来」
って感じか。

ソースは以下:
<html> 
<head>
<meta
http-equiv="Content-Type"
content="text/html; charset=Shift_JIS"
>
<hta:application
applicationname="jpHirosikiRssbar"
contextmenu="no"
innerborder="no"
maximizebutton="no"
minimizebutton="no"
selection="no"
showintaskbar="no"
singleinstance="yes"
/>
<title>ひろ式RSS</title>
<script
language="JavaScript"
>
var URL = 'http://memo.hirosiki.jp/index.rdf';

var d = document;
var q = "'";

function LoadRSS () {
var oRSS = new ActiveXObject( 'Microsoft.XMLDOM' );
oRSS.async = false;
if ( oRSS.load( URL ) ) {
items = TagContents( oRSS, 'item' );
var listHtml = '';
for ( var i=0; i<items.length; i++ ) {
listHtml +=
'<li>' +
EntryDiv(
'<a href="' +
TagContentText( items[i], 'link' ) +
'">' +
TagContentText( items[i], 'title' ) +
'</a>'
)
;
}
d.getElementById( 'Feed' ).innerHTML =
'<ul>' +
listHtml +
'</ul>'
;
}
}

function EntryDiv ( str ) {
return(
'\
<div\
onmouseover="\
this.parentNode.innerHTML = EntryMarquee( this.innerHTML );\
"\
>%%</div>\
'.replace( /%%/, str )
);
}
function EntryMarquee ( str ) {
return(
'\
<marquee\
onmouseout="\
this.parentNode.innerHTML = EntryDiv( this.innerHTML );\
"\
behavior="scroll"\
scrolldelay="120"\
>%%</marquee>\
'.replace( /%%/, str )
);
}

function TagContents ( elem, tagName ) {
return(
elem.getElementsByTagName( tagName )
);
}
function TagContent ( elem, tagName ) {
return(
TagContents( elem, tagName )[0]
);
}
function TagContentText( elem, tagName ) {
return(
TagContent( elem, tagName ).text
);
}

window.onload = function () {
window.resizeTo( 200, 240 );
LoadRSS();
}
</script>
<style>
* {
font-size: 12px;
font-style: normal;
margin: 0;
padding: 0;
}
h1 {
}
li {
margin-left: 1.5em;
padding-left: 0;
width: 10em;
height: 1em;
overflow-y: hidden;
}
address {
text-align: right;
}
</style>
</head>
<body>
<h1>ひろ式RSS</h1>
<div
id="Feed"
>
</div>
<hr>
<address>
<a
href="http://memo.hirosiki.jp/"
>ひろ式めも</a>
</address>
</body>
</html>


ダウンロード:
rssreader.hta
関連しそうな過去記事:
さらに過去の記事
2009/04 (1)   2008/12 (3)   2008/11 (9)   2008/10 (10)   2008/09 (20)   2008/08 (2)   2008/07 (23)   2008/06 (16)   2008/05 (22)   2008/04 (11)   2008/03 (21)   2008/02 (20)   2008/01 (21)   2007/12 (32)   2007/11 (37)   2007/10 (46)   2007/09 (63)   2007/08 (33)   2007/07 (41)   2007/06 (81)   2007/05 (173)   2007/04 (168)   2007/03 (113)   2007/02 (123)   2007/01 (92)   2006/12 (111)   2006/11 (185)   2006/10 (20)  
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。