/*
* yuga.js 0.1.0 - 優雅なWeb制作のためのJS
*
* Copyright (c) 2006 Kyosuke Nakamura (kyosuke.jp)
* Licensed under the MIT License:
* http://www.opensource.org/licenses/mit-license.php
*
* Since: 2006-10-30
* Modified: 2006-11-15
*/
/*
* [使用方法] XHTMLのhead要素内で次のように読み込みます。
*/
var yuga = {
preloader: {
loadedImages: [],
load: function (url){
var img = this.loadedImages;
var l = img.length;
img[l] = new Image();
img[l].src = url;
}
},
uri: {
dirName: function(uri){
var ary = uri.split('/');
ary.pop();
return ary.join('/');
},
path: function (uri){
return uri.split('#')[0];
},
anchorName: function (uri){
return uri.split('#')[1];
},
isSelfLink: function(href){
return ((this.path(href) == this.path(location.href)) || (this.path(href) == this.dirName(location.href)+'/'));
}
}
};
$(function(){
//リンク画像はロールオーバーを設定
$('a img.btn').each(function(){
this.originalSrc = $(this).src();
this.rolloverSrc = this.originalSrc.replace(/(\.gif|\.jpg|\.png)/, "_on$1");
yuga.preloader.load(this.rolloverSrc);
}).hover(function(){
$(this).src(this.rolloverSrc);
},function(){
$(this).src(this.originalSrc);
});
//外部リンクは別ウインドウを設定
$('a[@href^="http://"]').click(function(){
window.open(this.href, '_blank');
return false;
}).addClass('externalLink');
//ページ内リンクはするするアニメーション
$('a[@href^="#"]').click(function(){
var href = yuga.uri.anchorName($(this).href());
$('#'+href).ScrollTo(500,'easeout');
return false;
});
//画像へ直リンクするとthickboxで表示
$('a[@href$=".jpg"]').add('a[@href$=".gif"]').add('a[@href$=".png"]').click(function(){
var t = this.title || this.name || null;
var g = this.rel || false;
TB_show(t,this.href,g);
this.blur();
return false;
});
//奇数、偶数を自動追加
$('ul').each(function(){
$(this).find('li:odd').addClass('even');
$(this).find('li:even').addClass('odd');
});
$('table').each(function(){
$(this).find('tr:odd').addClass('even');
$(this).find('tr:even').addClass('odd');
});
//:first-child, :last-childをクラスとして追加
$(':first-child').addClass('firstChild');
$(':last-child').addClass('lastChild');
//css3の:emptyをクラスとして追加
$(':empty').addClass('empty');
});