/********************************************* * point.js *********************************************/ /* ------------------------------------------- * @constructor ------------------------------------------- */ var u = new EPOS_CARD.Util(); // u インスタンスを作成 jqNew = jQuery.noConflict(); if($ === undefined){ $ = jQuery; } j$ = jQuery || jqNew; /* ------------------------------------------- * @module ------------------------------------------- */ j$(function(){ j$('.annualFeeLink').on('click',function(){ if(!(j$('.ancAnnualFee').hasClass('open'))){ j$('.ancAnnualFee').addClass('open').next().slideToggle(); } }); j$.tabs(); j$.isLoaded(); }); (function(j$){ j$.tabs = function(){ var c = { tabName: ".fg-tabWrap", tablist: ".fg-tabList", boxName: ".fg-tabDetail", openClass : "active", escapeClass : "noTabLink" }; var $elm = j$(c.tabName); if($elm.length === 0){ return false; } $elm.each(function(){ var $this = j$(this), $list = j$(c.tablist, $this), $box = j$(c.boxName, $this); // 初期表示 $box.hide(); j$('li', $list).removeClass(c.openClass); j$('li:first-child', c.tablist).addClass(c.openClass); j$('li:first-child a', c.tablist).each(function(){ var showTab = j$(this).attr("href"); j$(showTab).show(); }); // 初期表示 $box.hide(); var hash = location.hash.split(/[?&]/)[0]; //パラメータに表示タブの指定があった場合切り替え if(hash.length !== 0 && $this.find(hash).length !== 0){ j$('li', $list).removeClass(c.openClass); j$('a[href=' + hash +']').parent().addClass(c.openClass); j$(hash).show(); //パラメータにアンカーリンクの指定があった場合、表示タブ内なら移動 $(window).on('load', function(){ j$("html, body").animate({ scrollTop: $list.offset().top }, 300, "swing"); }); } else { j$('li:first-child', c.tablist).addClass(c.openClass); j$('li:first-child a', c.tablist).each(function(){ var showTab = j$(this).attr("href"); j$(showTab).show(); }); } $list.on('click', 'li', function() { if(j$(this).is('.' + c.escapeClass)) { return false; } if(j$(this).hasClass(c.openClass)) { return false; } else { var href = j$("a", this).attr("href"); $list.children().removeClass(c.openClass); j$(this).addClass(c.openClass); $box.hide(); j$(href).show(); EPOS_CARD.module.equalHeight(); return false; } }); }); } /* * @plugin isLoaded * - メインビジュアルのアニメーションを開始 */ $.isLoaded = function(){ var $elm = $(".leadHeadFamilyIntWrap"), classNm = "is-loaded"; if($elm.length === 0){ return false; } $elm.addClass(classNm); } })(jQuery);