【ココログ】ラインカレンダーの設置
あずスタのads(あず)さんが作られたココログ・カレンダーを横一列に表示させるスクリプト(以下ラインカレンダーと呼称)を若干改造して設置してみました。
『ココログ・カレンダーを横一列に表示させるスクリプト』を見たときから設置したいとは思っていたのですが、必須条件である“IDが「banner-body-bottom」のdivタグ(ブロック要素)”をこのサイトは充たしていない(何故かうちのサイトでは要素が存在しない)ため、スクリプトの改変が必要なので今まで見送っていました。
オリジナルからの修正点は以下のようになります。
- カレンダースクリプトに対応。
併用するとラインカレンダーでも前後月への移動が可能になります。
- id="banner-body-bottom" のdiv要素が無いページに対応(id="banner" の div要素中に追加)。
- 通常カレンダー消去オプション(bDeleteCal)が有効のときdisplay属性をnoneにするように変更(オリジナルはinnerHTMLクリア)。
■単体で設置する場合
<script type="text/javascript" src="http://adstv-web.cocolog-nifty.com/studio/files/cocolog_linecalendar.js"></script>となっている箇所を、
<script type="text/javascript" src="http://furyu.tea-nifty.com/script/cocolog_linecalendar.js"></script>に変更して下さい。
【2006.08.16】追記
タイトルバナーに画像を設定している場合には、LineCalendar(); をコールする前に bAddInBanner = false; を追加して下さい(下記の赤色部分を追加します)。
<script type="text/javascript">
<!--
bAddInBanner = false;
LineCalendar();
// -->
</script>
■カレンダースクリプトと併用する場合
<style type="text/css">
<!--
#banner-body-bottom {
text-align: center;
padding: 4px;
}
#Line-Calendar {
font-family: verdana;
font-size: small;
text-align: center;
display: block;
padding: 4px;
border: 1px dashed red;
}
#Line-Calendar a { color: red; }
#Line-Calendar a:hover { color: white; background-color: red; }
-->
</style>
<script type="text/javascript" src="http://furyu.tea-nifty.com/script/cocolog_linecalendar.js"></script>
<!--【JavaScript版カレンダー】 -->
<script type="text/javascript" src="http://furyu.tea-nifty.com/script/prototype.js"></script>
<script type="text/javascript" src="http://furyu.tea-nifty.com/script/dayChecker.js"></script>
<script type="text/javascript" >
<!--
// === [オプション設定]
var calendarType ='J' ; // J:日本語 E:英語
var dateArchive = false ; // 日別アーカイブ有りの場合のみtrue設定可(日別ページへのリンクになる)
var calendarOnload = function( calendarObj ) {
bAddInBanner = true; // タイトルバナーが画像の場合はfalseに変更すること
LineCalendar(); // ラインカレンダー表示
if ( navigator.userAgent.match( /Opera/i ) ) {
var divs = document.getElementsByTagName('div') ;
for ( var ci=0; ci < divs.length; ci++ ) {
if ( divs[ci].className == 'sidebar' ) {
divs[ci].style.display = 'block' ;
}
}
}
else {
calendarCssAddRule( ".sidebar", "display:block" ) ;
}
}
//-->
</script>
<noscript>
<style type="text/css">
<!--
.sidebar {
display:block;
}
.calendar {
display:block;
}
*/
display:block;
}
</style>
</noscript>
<script type="text/javascript" src="http://furyu.tea-nifty.com/script/cocoCalendar.js"></script>
<script type="text/javascript" >
<!--
// === [カスタマイズカレンダー呼出]
checkCreateCalendar();
//-->
</script>
【2006.08.16追記】赤色の箇所は、タイトルバナーが画像の場合はtrueをfalseに変えて下さい。
display:none;
}
display:none;
}
2006/08/12(土) 23:09 | 固定リンク
| 記事の編集(管理者用)
「ウェブログ・ココログ関連」カテゴリの記事
- 【ココログ】『続きを読む』をクリックしても、記事の途中に飛ばない場合の対策(2008.05.23)
- 『はてブBOX』と、ココログ用『はてブコメント表示欄』スクリプトの更新(2008.05.05)
- 【ココログ】はてブコメント表示欄をサイドバーにも(2008.04.12)
- 【ココログ】はてなブックマークコメントを個別ページにさり気なく表示するスクリプト(2008.04.11)
- 【ココログ】特定の記事に対する最近のコメントをRSSで取得(Yahoo!Pipes版)(2008.03.09)


風柳さん、こんにちは!
近頃カレンダー関係で精力的に動いていらっしゃいますね。
私のスクリプトへのテコ入れの件、ありがとうございました。
「2」の前提条件外の対策はいずれ同じようなことをやるつもりでいたけど、
今になってようやく取り入れました。うちでも表示されるようになりました(笑)。
ところで、「id=banner」の部分に前提IDのdiv要素を「appendChild」した場合、
バナー画像を使用しているblogでは上手く表示されないかも?
「id=banner」のdiv要素の次に付加した方が無難かも?
詳しく確認していませんが、一応そちらの改造版でも動作確認していただきたいです。
問題が無ければOKですよ!
投稿 ads(あず) | 2006/08/16 1:20:12
あずさん、お知らせ有り難うございます。
確かに、タイトルバナーを画像にしていると、id=bannerのdiv要素内にappendChild()した場合はNGですね(styles.cssで#bannerがdisplay:none;されてしまっていました)。
うーん、そうするとbanner直後に挿入……でも、このサイトの場合だとバナー内に入れてしまった方が収まりがよいので……。
結局、オプション(bAddInBanner)を追加して選択出来るようにしました。
#スタイルシートの状態を調べれば自動判別も出来るかなとも思うのですが、技術力不足です(苦笑)
投稿 風柳>ads(あず) さん | 2006/08/16 2:41:37