/* * 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'); });