// JavaScript Document
var curAnchors;
var curSubAnchors;
var curPage;

jQuery(document).ready(function(){

	curAnchors = jQuery("#glossary-anchors-cbc");
	curSubAnchors = jQuery("#glossary-anchors-sub-a");
	curPage = "cbc.inc.html";

	jQuery(".glossary-menu a").each(function(){
		jQuery(this).bind("click", function(){
			//まずcurrentクラスの付いてるオブジェクトからcurrentクラスを削除
			jQuery(".glossary-menu .current").each(function(){
				jQuery(this).removeClass("current");
			});
			//クリックしたメニューボタンにcurrentクラスを付加
			jQuery(this).addClass("current");
			
			//rel属性のidのオブジェクトをスライド表示
			targetAnchors = jQuery("#"+jQuery(this).attr("rel"));
			curAnchors.slideUp("normal",function(){
				targetAnchors.slideDown("normal",function(){
														
				});
				curAnchors = targetAnchors;
			});

			if(jQuery(this).attr("rel")=="glossary-anchors-cbc"){
				incfile = "cbc.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-diff"){
				incfile = "diff.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-ret"){
				incfile = "ret.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-clotting"){
				var submenucur=jQuery(".glossary-submenu .current");
				if(submenucur.attr("rel")=="glossary-anchors-sub-a"){
					incfile = "a.inc.html";
				}else if(submenucur.attr("rel")=="glossary-anchors-sub-f"){
					incfile = "f.inc.html";
				}else if(submenucur.attr("rel")=="glossary-anchors-sub-l"){
					incfile = "l.inc.html";
				}else if(submenucur.attr("rel")=="glossary-anchors-sub-p"){
					incfile = "p.inc.html";
				}else if(submenucur.attr("rel")=="glossary-anchors-sub-s"){
					incfile = "s.inc.html";
				}else if(submenucur.attr("rel")=="glossary-anchors-sub-t"){
					incfile = "t.inc.html";
				}else if(submenucur.attr("rel")=="glossary-anchors-sub-other"){
					incfile = "other.inc.html";
				}else if(submenucur.attr("rel")=="glossary-anchors-sub-aa"){
					incfile = "aa.inc.html";
				}else if(submenucur.attr("rel")=="glossary-anchors-sub-ka"){
					incfile = "ka.inc.html";
				}else if(submenucur.attr("rel")=="glossary-anchors-sub-sa"){
					incfile = "sa.inc.html";
				}else if(submenucur.attr("rel")=="glossary-anchors-sub-ta"){
					incfile = "ta.inc.html";
				}else if(submenucur.attr("rel")=="glossary-anchors-sub-ha"){
					incfile = "ha.inc.html";
				}else if(submenucur.attr("rel")=="glossary-anchors-sub-ra"){
					incfile = "ra.inc.html";
				}
			}
			
			if(curPage!=incfile)
			{
				curPage = incfile;
				jQuery("#glossary-target").slideUp("slow",function(){
					jQuery.ajax({
						cache:true,
						url:incfile,
						type:"GET",
						error: function(){
							alert("htmlファイルの読み込みに失敗しました");
						},
						dataType:"html",
						success:function(html){
							jQuery("#glossary-target").empty();
							jQuery("#glossary-target").append(html);
							jQuery("#glossary-target").slideDown("slow",function(){
								setTotop();
								setPageAnchor();
							});
						}
					});
				});
			}

			return false;
		});
	});

	jQuery(".glossary-submenu a").each(function(){
		jQuery(this).bind("click", function(){
			//まずcurrentクラスの付いてるオブジェクトからcurrentクラスを削除
			jQuery(".glossary-submenu .current").each(function(){
				jQuery(this).removeClass("current");
			});
			//クリックしたメニューボタンにcurrentクラスを付加
			jQuery(this).addClass("current");
			
			//rel属性のidのオブジェクトをスライド表示
			targetAnchors = jQuery("#"+jQuery(this).attr("rel"));
			curSubAnchors.slideUp("normal",function(){
				targetAnchors.slideDown("normal");
				curSubAnchors = targetAnchors;
			});

			if(jQuery(this).attr("rel")=="glossary-anchors-sub-a"){
				incfile = "a.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-sub-f"){
				incfile = "f.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-sub-l"){
				incfile = "l.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-sub-p"){
				incfile = "p.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-sub-s"){
				incfile = "s.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-sub-t"){
				incfile = "t.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-sub-other"){
				incfile = "other.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-sub-aa"){
				incfile = "aa.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-sub-ka"){
				incfile = "ka.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-sub-sa"){
				incfile = "sa.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-sub-ta"){
				incfile = "ta.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-sub-ha"){
				incfile = "ha.inc.html";
			}else if(jQuery(this).attr("rel")=="glossary-anchors-sub-ra"){
				incfile = "ra.inc.html";
			}
			
			if(curPage!=incfile)
			{
				curPage = incfile;
				jQuery("#glossary-target").slideUp("slow",function(){
					jQuery.ajax({
						cache:true,
						url:incfile,
						type:"GET",
						error: function(){
							alert("htmlファイルの読み込みに失敗しました");
						},
						dataType:"html",
						success:function(html){
							jQuery("#glossary-target").empty();
							jQuery("#glossary-target").append(html);
							jQuery("#glossary-target").slideDown("slow",function(){
								setTotop();
								setPageAnchor();
							});
						}
					});
				});
			}

			return false;
		});
	});

	setTotop();
	setPageAnchor();


	jQuery("#glossary-anchors-cbc a").each(function(){
		incfile = "cbc.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-diff a").each(function(){
		incfile = "diff.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-ret a").each(function(){
		incfile = "ret.inc.html";
		setAnchor(incfile,jQuery(this));
	});


	jQuery("#glossary-anchors-sub-a a").each(function(){
		incfile = "a.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-sub-f a").each(function(){
		incfile = "f.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-sub-l a").each(function(){
		incfile = "l.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-sub-p a").each(function(){
		incfile = "p.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-sub-s a").each(function(){
		incfile = "s.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-sub-t a").each(function(){
		incfile = "t.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-sub-other a").each(function(){
		incfile = "other.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-sub-aa a").each(function(){
		incfile = "aa.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-sub-ka a").each(function(){
		incfile = "ka.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-sub-sa a").each(function(){
		incfile = "sa.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-sub-ta a").each(function(){
		incfile = "ta.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-sub-ha a").each(function(){
		incfile = "ha.inc.html";
		setAnchor(incfile,jQuery(this));
	});
	jQuery("#glossary-anchors-sub-ra a").each(function(){
		incfile = "ra.inc.html";
		setAnchor(incfile,jQuery(this));
	});
});






function setTotop(){
	jQuery(".glossary-totop a").each(function(){
		jQuery(this).bind("click", function(){
			jQuery('html,body').animate({ scrollTop: 0 }, 'slow');
			return false;
		});
	});
}
function setPageAnchor(){
	jQuery("a.glossary-content-anchor").each(function(){
		setAnchor(jQuery(this).attr("rel"),jQuery(this));
	});
}
var tmp;
function setAnchor(incfile,targetObj){
	targetObj.bind("click", function(){
		if(curPage!=incfile)
		{
			tmp=targetObj.attr("href");
			curPage = incfile;
			jQuery("#glossary-target").slideUp("slow",function(){
				jQuery.ajax({
					cache:true,
					url:incfile,
					type:"GET",
					error: function(){
						alert("htmlファイルの読み込みに失敗しました");
					},
					dataType:"html",
					success:function(html){
						jQuery("#glossary-target").empty();
						jQuery("#glossary-target").append(html);
						jQuery("#glossary-target").slideDown("slow",function(){
							setTotop();
							setPageAnchor();

							tmp=tmp.slice(tmp.indexOf("#"));
							if($(tmp).offset()!=null)
							{	
								$('html,body').animate({ scrollTop: $(tmp).offset().top }, 'slow');
							}
						});
					}
				});
			});
		}
		else
		{
			$('html,body').animate({ scrollTop: jQuery(targetObj.attr("href")).offset().top }, 'slow');
		}
		return false;	
	});
}
