/* ================================================================================
* Title: Jquery Function
*
* Copyright (c) 2009 Astra The Studio Inc.
* http://www.studio.co.jp/
* Date: Feb.13, 2009
* @author: Chihiro Mori
* @version: 1.0.5
*
* jQuery 1.6.1
*
* 確認済ブラウザ: [Mac] FireFox3.0, Safari3.1.2 [Win] IE6.0, 7.0
* Macで作業するときの注意：バックスラッシュ\を入力するときはoptionを押しながらエンマーク
================================================================================ */

(function($)
{
//---------------------------------------------------------------------
	$(function()
	{
		$.ASconf.selfLink();
		$.ASconf.selfScroll();
		$.ASconf.btnRollover();
		$.ASconf.customScroll();
		$.ASconf.pngFix();
	});
//---------------------------------------------------------------------
	$.ASconf =
	{
	//---------------------------------------------------------------------
	extend:function(){
	   $.fn.extend({
			//.log()をつけてチェーン途中でもログ出力
			log: function() {
				   console.log($(this));
				   return this;
			},
			
		   
			//ブラウザーごとのクラスを付与
			addBrowserClass:function(){
				   //http://w3g.jp/blog/tools/jquery_browser_sniffingを参照
				   if(!$.support.checkOn && $.support.checkClone){
						var _browser = "webkit";
				   }else if($.support.checkOn && $.support.noCloneEvent && window.globalStorage){
					  var _browser = "firefox";
				   }else if($.support.checkOn && $.support.noCloneEvent && !window.globalStorage){
						var _browser = "opera";
				   }else if(!$.support.noCloneEvent && $.support.opacity){
						var _browser = "ie9";
				   }else if(!$.support.opacity){
						 if(!$.support.style){
								if (typeof document.documentElement.style.maxHeight != "undefined") {
								  var _browser = "ie7";
								} else {
								  var _browser = "ie6";
								}
						 }else{
							 var _browser = "ie8";
						 }
				   }else{
						 var _browser = "unknown";
				   }
				   $(this).addClass(_browser)
				   return this;
			}					
		});
		$.extend({
			returnBrowser:function(){
					if(!$.support.checkOn && $.support.checkClone){
							var _browser = "webkit";
					   }else if($.support.checkOn && $.support.noCloneEvent && window.globalStorage){
						  var _browser = "firefox";
					   }else if($.support.checkOn && $.support.noCloneEvent && !window.globalStorage){
							var _browser = "opera";
					   }else if(!$.support.noCloneEvent && $.support.opacity){
							var _browser = "ie9";
					   }else if(!$.support.opacity){
							 if(!$.support.style){
									if (typeof document.documentElement.style.maxHeight != "undefined") {
									  var _browser = "ie7";
									} else {
									  var _browser = "ie6";
									}
							 }else{
								 var _browser = "ie8";
							 }
					   }else{
							 var _browser = "unknown";
					   }
					  return _browser;
					}
			})
	}
	,
		//-----------------------------------------------------------------
		selfLink: function ()
		{//自ページリンクにクラス付与。子要素にイメージが含まれていたら半透明化//
			
			var selfLinkClass = 'current';//Aタグに付与//
			var theUrl = location.href.replace(location.hash, '').replace(/(\/|\#)$/, '/index.html');
			
			//他のファンクションから「shr」フォルダのパスを参照できる「$.ASconf.shrUrl」を生成//
			$.ASconf.shrUrl = document.getElementById('baseCSS').href.replace('css/base.css', '');
			
			$('a[href]:not(.current)').each(function()
			{
				var target = $(this);
				var childImg = target.find('img');
				var i = document.createElement('span');
				i.innerHTML = '<a href="' + target.attr('href') + '" />';
				var absolutePath = i.firstChild.href;				
				if (absolutePath == theUrl)
				{//パスを比較して同じだったら//
					target.addClass(selfLinkClass).removeAttr('href');
					if(childImg.parent().parent().parent().attr('id') != 'gNav'){
						childImg.fadeTo(0, 0.7);
					}else {
						childImg.fadeTo(0, 0);
					}
				}
			});
		}
		,
		//-----------------------------------------------------------------
		selfScroll: function()
		{//^は初めの文字が#だった場合。*にするとhoge.html#hogeもマッチ//
			$('a[href^=#]').click(function(e)
			{
				var hash = $(this).attr('href');
				if(!hash || hash == "#")
				{//#のみの場合はデフォルト動作を止める。//
					e.preventDefault();
				}
				else
				{
					$('html').animate({scrollTop: $(hash).offset().top}, 300, 'swing');
					return false;
				}
			});
		}
		,
		//-----------------------------------------------------------------
		btnRollover: function()
		{
			$('a:not(.current):has(img)').each(function()
			{
				var target = $(this);
				target.hover(function()
				{
					if(target.parents('ul#gNav').get(0))
					{//gNavだったら完全に透明にして、背景画像を見せる//
						target.not(':animated').fadeTo('normal', 0);
					}
					else
					{
						target.not(':animated').fadeTo('fast', 0.6);
					}
				}
				,function()
				{
					target.fadeTo('fast', 1);
				});
			});
		}
		,
		//-----------------------------------------------------------------
		customScroll: function()
		{
			$('div.scrollCont').each(function()
			{//カスタムスクロールバー		//
				$(this).jScrollPane({animateScroll :true});
			});
		}
		,
		//-----------------------------------------------------------------
		pulldown: function()
		{
			$('ul#hoge').find('li.pulldown').each(function()
			{
				var trriger = $(this);
				var target = trriger.find('ul');
				target.hide();
				trriger.hover(function()
				{
					target.not(':animated').slideDown('fast');
				}
				,function()
				{
					target.slideUp();
				});
			});
		},
		//-----------------------------------------------------------------
		pngFix: function()
		{		
			if (typeof document.documentElement.style.maxHeight == "undefined") {

				try{
				$('img[src$=png]').fixPng();
				
				
				}catch(e){
	
				}
				
			}
		}
		//-----------------------------------------------------------------
	};
//---------------------------------------------------------------------
})(jQuery);
