$(function(){ var $window = $(window), breakPoint = 768, //ブレイクポイントの設定 winW = $window.width(), //画面の横幅 winH = $window.height(), //画面の縦幅 anchorSpeed = 400, //アンカーリンクのスムーズスクロールのスピード resizeTimer = false; if (navigator.platform == "iPad" || (navigator.platform == "MacIntel" && navigator.userAgent.indexOf("Safari") != -1 && navigator.userAgent.indexOf("Chrome") == -1 && navigator.standalone !== undefined) || (navigator.userAgent.indexOf('Android') > 0 && navigator.userAgent.indexOf('Mobile') == -1)) { // $('body').html('1300px表示です'); } /* change Img *********************************************/ function changeImgSp(){ $('.change-img').each(function(){ $(this).attr("src",$(this).attr("src").replace(/_pc\./, '_sp.')); }); } function changeImgPc(){ $('.change-img').each(function(){ $(this).attr("src",$(this).attr("src").replace(/_sp\./, '_pc.')); }); } /* smooth scroll *********************************************/ var headerHeight = 0; // var headerHeight = $('.l-header').outerHeight(); //headerが常時追従の場合はこれをアンコメント var urlHash = location.hash; if(urlHash) { $('body,html').stop().scrollTop(0); setTimeout(function(){ var target = $(urlHash); smoothScroll(target); }, 100); } $('.anchor').click(function() { var href= $(this).attr("href"); var target = $(href); smoothScroll(target); return false; }); function smoothScroll(target) { var position = target.offset().top - headerHeight; $("html, body").animate({scrollTop:position}, anchorSpeed, "swing"); } /* ページトップ *********************************************/ //page-top $(function() { var topBtn = $('.tk_page-top'); topBtn.hide(); //消える $(window).scroll(function () { if ($(this).scrollTop() > 10) { topBtn.fadeIn(); } else { topBtn.fadeOut(); } }); }); /* SCROLL BLOCK - メニュー等が開いている間はコンテンツがスクロールしないよう制御 *********************************************/ function scrollBlocker(flag){ if(flag){ scrollpos = $(window).scrollTop(); $('.tk_l-body').addClass('tk_is-fixed').css({'top': -scrollpos}); } else { $('.tk_l-body').removeClass('tk_is-fixed').removeAttr('style'); window.scrollTo( 0 , scrollpos ); } } // scrollBlocker(true); //スクロールブロック有効 // scrollBlocker(false); //スクロールブロック無効 /* menu *********************************************/ // header,header_megamenu $(".tk_btn-menu.tk_is-closed").click(function () { spMenuOpen(); // btnMenu(); }); $('.tk_btn-menu.tk_is-closed').keypress(function(e) { if (e.keyCode == 13) { spMenuOpen(); } }); $(".tk_btn-menu.tk_is-opening").click(function () { spMenuClose(); }); $('.tk_btn-menu.tk_is-opening').keypress(function(e) { if (e.keyCode == 13) { spMenuClose(); } }); function spMenuOpen(){ $(".tk_global-menu").fadeIn().attr('aria-hidden', 'false'); scrollBlocker(true); $('.tk_global-menu a').eq(0).focus(); }; function spMenuClose(){ $(".tk_global-menu").fadeOut().attr('aria-hidden', 'true'); scrollBlocker(false); }; // スクロールしたタイミングで実行 $(window).scroll(function () { // ScrollAnime(); var scroll = $(window).scrollTop(); if(scroll > winH / 2) { $('.tk_header-fixed').addClass('tk_is-visible'); } else { $('.tk_header-fixed').removeClass('tk_is-visible'); } }); // header_megamenu $(function($) { $(".tk_quick-menu-sub-wrap .tk_u-menu").prev("a").addClass('to-lower'); }); // header_megamenu // $(".tk_quick-menu-sub-wrap a.to-lower").on('click', function(e) { // $(this).next(".tk_u-menu").slideToggle(); // e.preventDefault(); // }); // $(".tk_quick-menu-sub-wrap a.to-lower").on('mouseenter', function(e) { // $(this).next(".tk_u-menu").slideDown(); // e.preventDefault(); // }); // $(".tk_quick-menu-sub__item .tk_u-menu").on('mouseleave', function(e) { // $(this).slideUp(); // e.preventDefault(); // }); // 多言語プルダウン $(".tk_btn-lang-pulldown dt").click(function (e) { $(this).next("dd").slideToggle(); }); $('.tk_btn-lang-pulldown dd ul li:last-child a').focusin(function(e) { }).focusout(function(e) { $(".tk_btn-lang-pulldown dt").next("dd").slideUp(); }); /* 記事リストのhover *********************************************/ $('.list-post__image a:not([class]), .list-post__link').hover(function() { $(this).parents('.list-post').addClass('is-hover'); }, function() { $(this).parents('.list-post').removeClass('is-hover'); }); /* smooth scroll *********************************************/ var anchorSpeed = 400; // var headerHeight = 120; var headerHeight = $('.tk_header-fixed').outerHeight(); var urlHash = location.hash; if(urlHash) { $('body,html').stop().scrollTop(0); setTimeout(function(){ var target = $(urlHash); smoothScroll(target); }, 100); } $('a[href^="#"]:not([role="tab"])').click(function() { var href= $(this).attr("href"); var target = $(href); // if($(this).parent().hasClass('btn-skip')) { // $skipBtnHeight = $('.btn-skip').innerHeight(); // smoothScroll(target, $skipBtnHeight); // } else { smoothScroll(target); // } }); function smoothScroll(target, $skip = 0) { var position = target.offset().top - headerHeight - $skip; $("html, body").animate({scrollTop:position}, anchorSpeed, "swing"); } // page-top var topBtn = $(".tk_page-top a"); //スクロールしてトップ topBtn.click(function () { $('body, html').animate({ scrollTop: 0 },500); return false; }); /* グローバルナビ内 *********************************************/ // $('.tk_menu-tourism__list').hide(); // 初期状態を非表示に // $('.tk_menu-tourism__heading').on('click', function () { // $('.tk_menu-tourism__list').slideToggle(); // }); $('.tk_useful__heading').click(function(){ $($(this).next('.tk_useful__list')).slideToggle(400); }); /* お気に入りボタン *********************************************/ $('.icon-fav').click(function(){ $(this).toggleClass('is-active'); if($(this).hasClass('is-active')) { $(this).text('お気に入りリストから除外する'); } else { $(this).text('お気に入りリストに登録する'); } }); $('.btn-fav').click(function(){ $(this).toggleClass('is-active'); if($(this).hasClass('is-active')) { $(this).text('お気に入りリストに追加済み'); } else { $(this).text('お気に入りリストに追加'); } }); /* ダウンロードボタン *********************************************/ //$('.btn-add-list').click(function(){ // $(this).toggleClass('is-active'); // if($(this).hasClass('is-active')) { // $(this).text('リストに追加済み'); // } else { // $(this).text('リストに追加'); // } //}); /******************************************** [PC ONLY] *********************************************/ function pcSizeOnly(){ /* 画像PC/SP切り替え *******************************************/ changeImgPc(); /* dom移動 *********************************************/ // global-menu $('.tk_global-menu .tk_list-sns').prependTo('.tk_global-menu__function__inner'); $('.tk_global-menu .tk_btn-lang-wrap').appendTo('.tk_global-menu__function'); /* グローバルナビ内 *********************************************/ $('.tk_menu-tourism__list').removeAttr('style'); } /******************************************** [SP ONLY] *********************************************/ function spSizeOnly(){ /* 画像PC/SP切り替え *******************************************/ changeImgSp(); /* dom移動 *********************************************/ // global-menu $('.tk_global-menu .tk_list-sns').insertBefore('.tk_menu-list-sp-3'); $('.tk_global-menu .tk_btn-lang-wrap').insertAfter('.tk_menu-tourism'); } /******************************************** [PC/SP切り替え] 以下編集不可 *********************************************/ function descriminateBp(){ winW = $window.width(); if(winW <= breakPoint){ spSizeOnly(); }else if(winW > breakPoint){ pcSizeOnly(); } } descriminateBp(); $window.resize(function() { if(winW > $window.width() || winW < $window.width()){ if (resizeTimer !== false) { clearTimeout(resizeTimer); } resizeTimer = setTimeout(descriminateBp, 200); } }); });