// JavaScript Document var x = 0; var y = 0; var URL = document.domain; var HASH = location.hash; var root = "http://classmethod.jp/"; //var root = "http://192.168.1.140/labs/cmhp/"; //var root = "http://192.168.1.112/pj/cmhp/"; var bookmark = "bookmark"; var cookiepath = "/"; //var cookiepath = "/labs/ff11_2/"; //読み込み時処理 $(function(){ //フッターナビ置換 $("#footer #iFooter #fNavi .gNaviTitle").imgReplace({url:root + "common/img/f_navi_title_01.gif"}); $("#footer #iFooter #fNavi .sNaviTitle").imgReplace({url:root + "common/img/f_navi_title_02.gif"}); $("#footer #iFooter #fNavi .lNaviTitle").imgReplace({url:root + "common/img/f_navi_title_03.gif"}); //パンくずナビ $("#pNavi #ipNavi .home a").imgReplace({url:root + "common/img/p_navi_home_icon.gif"}); //マウスオーバー $("#gNavi #igNavi img").imgOver({nomal:"_n.",over:"_o."}); $("#sNavi #isNavi img").imgOver({nomal:"_n.",over:"_o."}); $("#contactBt a img").imgOver({nomal:"_n.",over:"_o."}); //マウスクリック $("#gNavi #igNavi img").imgClick({over:"_o.",click:"_c."}); $("#sNavi #isNavi img").imgClick({over:"_o.",click:"_c."}); //スクロールダウンロールオーバー $(".scrollDown a img").imgOver({nomal:"_n.",over:"_o."}); //リンクブランク化 Elements = document.getElementsByTagName("a"); for(var i = 0; i < Elements.length; i++){ $(Elements[i]).click(function(event){ //URL調査 var SearchOutLink1 = this.href.indexOf("http://"); if(SearchOutLink1 == -1){ var SearchOutLink2 = 0; } else { var SearchOutLink2 = this.href.indexOf(URL); } if(SearchOutLink2 == -1){ this.target = "_blank"; } } ); } //エレメントの追加 $('
ロード中
').prependTo('#siteTitle'); //ページスクロール $(".scrollTop").siteScroll({speed:500}); //フォームフォーカス時の処理 var headForm = $("#headSearch"); headForm.formDefault({text:"サイト内検索",n_color:"#333",c_color:"#aaa"}); //背景フォーカス用化 headForm.focus(function(){ $(".searchForm span").css("background-position","0 0"); }); //背景通常化 headForm.blur(function(){ $(".searchForm span").css("background-position","0 -30px"); }); //テキストエリア拡大縮小 $('textarea').autoResize({ // On resize: onResize : function() { $(this).css({opacity:1}); }, // After resize: animateCallback : function() { $(this).css({opacity:1}); }, // Quite slow animation: animateDuration : 300, // More extra space: extraSpace : 60 }); //セキュリティ文面の拡大 $('#security').TextAreaResizer(); //非表示処理 var headSearchDel = $("#headSearchDel"); if(headForm.val() == ""){ headSearchDel.toggle(); } //読み込み時処理 var length = headForm.val(); if(length == "サイト内検索"){ headSearchDel.hide(); } else { headSearchDel.show(); } //クリアボタン headForm.keyup(function(){ //クリアボタンの表示 if(length != ""){ headSearchDel.show(); } else { headSearchDel.hide(); } }); //クリアボタンの処理 headSearchDel.click(function(){ headForm.val(""); headSearchDel.hide(); headForm.focus(); }); //サーチサジェスト headForm.suggest(root + "module/suggest.php",{}); //ブラウザアラート $("#closeBrowserAlert").closeElements({target:"#browserAlert"}); //ブックマーク if(navigator.appName != "Microsoft Internet Explorer"){ loadBookmark(); $("#listBookmark dl").hide(); $("#listBookmark a").click(function(){ $("#listBookmark dl").toggle("high"); }); if($.cookie(bookmark)){ createBookmarkList(); } else { $.cookie(bookmark,"",{ path: cookiepath, expires: 30 }) var data = "
ページクリップ
\n"; data += "
現在クリップはありません。
この機能は気になるページを一時的に保存できます。
\n"; $("#listBookmark dl").html(data); } //ブックマーク生成イベント $("#adBookmark a").click(function(){ checkBookmark(); addBookmark(); }); } //tooltip $('#adBookmark').qtip({ content: 'クリックでこのページを
一時的に保存します。', style: { width: 200, padding: 5, background: '#FFF2C7', color: '#333', textAlign: 'center', border: { width: 3, radius: 5, color: '#FFF2C7' }, tip: { corner:'topRight' } }, position: { corner:{ target: 'bottomRight', tooltip: 'topRight' } } , show: 'mouseover', hide: { when: { event: 'mouseout'}, delay: 500 } }); $('#headSearch').qtip({ content: 'キーワードを入力し、
Enterキーで検索できます。', style: { width: 200, padding: 5, background: '#FFF2C7', color: '#333', textAlign: 'center', border: { width: 3, radius: 5, color: '#FFF2C7' }, tip: { corner:'bottomMiddle' } }, position: { corner:{ target: 'topMiddle', tooltip: 'bottomMiddle' } } , show: 'focus', hide: { when: { event: 'blur'}, delay: 500 } }); $('.blank').qtip({ content: 'このリンクは新しいウィンドウまたはタブで開かれます。', style: { width: 200, padding: 5, background: '#FFF2C7', color: '#333', textAlign: 'center', border: { width: 3, radius: 5, color: '#FFF2C7' }, tip: { corner:'bottomRight' } }, position: { corner:{ target: 'topRight', tooltip: 'bottomRight' } } , show: 'mouseover', hide: { when: { event: 'mouseout'}, delay: 500 } }); // Initialize history plugin. // The callback is called at once by present location.hash. $.historyInit(pageload); // set onlick event for buttons $("a[rel='history']").click(function(){ var hash = this.href; hash = hash.replace(/^.*#/, ''); if(hash != "javascript:void(0)"){ $.historyLoad(hash); } return false; }); //fancy box $("a.photo").fancybox({ 'padding' : 7, 'zoomSpeedIn' : 200, 'zoomSpeedOut' : 200, 'zoomSpeedChange': 100, 'overlayOpacity' : 0.8 }); //ページ読み込み時処理 loadFunction(); }); //History function pageload(hash) { // alert("pageload: " + hash); // hash doesn't contain the first # character. if(hash) { // restore ajax loaded state if($.browser.msie) { // jquery's $.load() function does't work when hash include special characters like åäö. hash = encodeURIComponent(hash); } //スクロール処理 location.href = "#" + hash; } else { //start page } } function loadBookmark(){ var elements = $("#adBookmark a img"); var flag = 0; var flagnum = ""; var data = $.cookie(bookmark); var url = location.href; //配列化 if(data != null){ array = data.split("--"); for(var i = 0; i < array.length; i++){ array[i] = array[i].split("||"); } //判定 for(var i = 0; i < array.length; i++){ //判定 if(array[i][1] == url){ flag = 1; flagnum = i; break; } } } //分岐処理 var url = elements.attr("src"); //alert(url); if(flag == 1){ url = url.replace("_n.","_o."); elements.attr("src",url); } } function checkBookmark(){ var elements = $("#adBookmark a img"); var flag = 0; var flagnum = ""; var data = $.cookie(bookmark); var url = location.href; //配列化 array = data.split("--"); for(var i = 0; i < array.length; i++){ array[i] = array[i].split("||"); } //判定 for(var i = 0; i < array.length; i++){ //判定 if(array[i][1] == url){ flag = 1; flagnum = i; break; } } //分岐処理 url = elements.attr("src"); //alert(url); if(flag == 0){ url = url.replace("_n.","_o."); elements.attr("src",url); } else { url = url.replace("_o.","_n."); elements.attr("src",url); } } //ブックマーク保存 function addBookmark(){ var title = document.title; var url = location.href; var data = $.cookie(bookmark); var flag = ""; var flagnum = ""; //配列化 array = data.split("--"); for(var i = 0; i < array.length; i++){ array[i] = array[i].split("||"); } //判定 for(var i = 0; i < array.length; i++){ //判定 if(array[i][1] == url){ flag = 1; flagnum = i; break; } } //分岐処理 if(flag == 0){ if(data == ""){ data += title + "||" + url; } else { data += "--" + title + "||" + url; } //保存 $.cookie(bookmark,data,{ path: cookiepath, expires: 30 }); //生成 createBookmarkList(); popupAlert("ページクリップを保存しました。"); } else { delBookmark(flagnum); } } //ブックマーク削除 function delBookmark(num){ var data = $.cookie(bookmark); var array = Array(); //配列化 array = data.split("--"); for(var i = 0; i < array.length; i++){ array[i] = array[i].split("||"); //alert(i + ":in:" + array[i]); } //要素の削除 array.splice(num,1); popupAlert("ページクリップを解除しました。"); //初期化 checkBookmark(); //テキスト化 var text = ""; for(var i = 0; i < array.length; i++){ if(i == 0){ text += array[i][0] + "||" + array[i][1]; } else { text += "--" + array[i][0] + "||" +array[i][1]; } } //保存 $.cookie(bookmark,text,{ path: cookiepath, expires: 30 }); //生成 createBookmarkList(); } function createBookmarkList(){ var data = $.cookie(bookmark); //配列化 data = data.split("--"); for(var i = 0; i < data.length; i++){ data[i] = data[i].split("||"); } //htmlの生成 var html = "
ページクリップ
"; for(var i = 0; i < data.length; i++){ if(data[i] != "null"){ if($.cookie(bookmark) != ""){ html += "
" + data[i][0] + "
\n"; } else { html += "
現在ページクリップはありません
\n"; } } } //htmlへデータ格納 $("#listBookmark dl").html(html); } /* Alert */ var alertPlayFlag = 0; function popupAlert(texts){ var elements = $("#innerAlertBox"); if(alertPlayFlag == 1){ clearTimeout(alertBoxFadeTime); } elements.html(texts); //elements.show("high"); elements.animate({marginTop: "28px"}, 300); alertBoxFadeTime = setTimeout("alertBoxFadeout()", 3000); alertPlayFlag = 1; } function alertBoxFadeout(){ var elements = $("#innerAlertBox"); elements.animate({ marginTop: "-8px"}, 300); alertPlayFlag = 0; }