!function ($) { //ファイル読み込んだ時に対象メニューをクローンさせるところまで var $win = $(window); //var $sc_menu = ''; var $targetMenu = ''; //var $clone_sc_menu = ''; var $cloneTargetMenu = ''; var headerMenuFlg = false; var $fixedMenu = ''; var hmpScFlg = 0; var hmpFlg = 0; var $heightDiv = ''; var $bg = $('#bg'); var device = $bg.data('device'); setTimeout(function(){ $.marquee_init($('#header.normal-header')); },1000); //スクロール時メニュー動作 //$hmpScFlg 0.しない,1.スクロール時メニュー,2.通常メニュー //$hmpFlg 0.メニューパーツ,1.ヘッダー内メニュー if($('.parts-area').data('area') == 'header'){ hmpScFlg = $('.parts-area').data('hmp-sc-flg'); hmpFlg = $('.parts-area').data('hmp-flg'); } //スクロール時メニュー表示 if(hmpScFlg == 1){ //spページで通常ヘッダー(メニューパーツ含む)使用 if($('header').hasClass('pos3') || $('header').hasClass('pos5')){ if($('#parts5').length){ $targetMenu = $('#parts5.menu-parts'); headerMenuFlg = true; } //spページで通常ヘッダーのみ使用 }else if($('header').hasClass('pos4')){ if($('#parts1').find('.menu-parts').length){ $targetMenu = $('#parts1').find('.menu-parts'); headerMenuFlg = true; } //通常ページ }else{ //ヘッダー内メニュー if(hmpFlg){ if($('#parts1').find('.menu-parts').length){ $targetMenu = $('#parts1').find('.menu-parts'); headerMenuFlg = true; } //パーツメニュー }else{ if($('#parts5').length){ $targetMenu = $('#parts5.menu-parts'); headerMenuFlg = true; } } } //ヘッダータグの外にスクロールメニュー複製(パララックスでうまく動かないなど懸念、構成的に) if($targetMenu.length){ $cloneTargetMenu = $targetMenu.clone(true).insertAfter($('header')).attr('id','hd-sc-menu').css('display','none'); //#4083 matuuchi if($cloneTargetMenu.find(".marquee-menu").length){ $cloneTargetMenu.find('nav > ul').removeClass('marquee-menu'); $cloneTargetMenu.find('nav > ul > li > ul.current').addClass('marquee-menu'); } } //通常メニュー表示 }else if(hmpScFlg == 2){ //spページで通常ヘッダー(メニューパーツ含む)使用 if($('header').hasClass('pos3') || $('header').hasClass('pos5')){ if($('header').find('.menu-parts').length){ $targetMenu = $('#parts5.menu-parts'); } //spページで通常ヘッダーのみ使用 }else if($('header').hasClass('pos4')){ if($('#parts1').find('.menu-parts').length){ $targetMenu = $('#parts1'); } //通常ページ }else{ //ヘッダー内メニュー if(hmpFlg){ if($('#parts1').find('.menu-parts').length){ $targetMenu = $('#parts1'); } //パーツメニュー }else{ if($('#parts5').length){ $targetMenu = $('#parts5.menu-parts'); } } } //パララックスでなければ高さをとるためのdivを作成 if (!(real_device == 'pc' && device == 'pc' && $bg.data('sp-type') == 1 && !BaseUrl.match(/(dsadmin)/) && !$bg.data('capture'))) { if ($targetMenu) { $heightDiv = $('
').insertAfter($targetMenu).css('height',$targetMenu.height()); $heightDiv.css('display','none'); } } } $.extend({ scroll_section_init: function() { if($targetMenu && $targetMenu.length){ var menu_posX = $targetMenu.offset().top + $targetMenu.height(); var menu_posY = $targetMenu.offset().left; // スクロールでもメニューついてくる $win.on('load scroll', function() { var value = $(this).scrollTop(); if (BaseUrl.match(/(dsadmin\/SpPages)/)) { value = value + 56; } if (($cloneTargetMenu.length && ($cloneTargetMenu.css('display') == 'none') && (hmpScFlg == 1)) || hmpScFlg == 2) { if (value > menu_posX) { //開くアニメーション if(hmpScFlg == 1){ $.visible_hdmenu(); }else{ $.visible_normal_hdmenu(); } }else if (value < menu_posX && hmpScFlg == 2) { //閉じるアニメーション $.hidden_normal_hdmenu(); } }else{ if (value < menu_posX ) { //閉じるアニメーション $.hidden_hdmenu(); } } }); } //開くアニメーション(スクロールメニュー) },visible_hdmenu: function() { if(!$cloneTargetMenu.length) return; if (!$cloneTargetMenu.hasClass('is-fixed')) { //スクロールメニュー表示の場合 if($cloneTargetMenu.length && (hmpScFlg == 1)){ $cloneTargetMenu.find('.menu-bottom').remove(); if(headerMenuFlg){ //スタイルがあたらないので一旦すべて削除 $cloneTargetMenu.removeAttr('style'); $cloneTargetMenu.css('display','none'); } } $cloneTargetMenu.addClass('is-fixed').hide(); setTimeout(function() { $cloneTargetMenu.find('.logo').css('display','block'); $cloneTargetMenu.animate({height: 'show'}, 'slow'); $cloneTargetMenu.find('nav').find('li').find('a').attr('id',''); /*$firstLi = $cloneTargetMenu.find('.nav > li'); console.log($firstLi.length); $firstLiWidth = $firstLi.width(); console.log($firstLiWidth); $firstLi.css('width',$firstLiWidth);*/ //サブメニュー表示時一階層目が伸びるの防止 $cloneTargetMenu.find('.nav > li').each(function(){ $(this).css('width',$(this).innerWidth() + 1); }); $cloneTargetMenu.find('nav').addClass('normal-menu'); //メニュー 垂直対応 if($cloneTargetMenu.find(".logo").length && $cloneTargetMenu.find('nav.normal-menu').length){ var padding = ($cloneTargetMenu.find(".logo").height() / 2) - ($cloneTargetMenu.find('nav.normal-menu').height() / 2); $cloneTargetMenu.find('nav.normal-menu').css("padding-top",padding+"px"); } //$cloneTargetMenu.find('a').removeAttr('style'); //$cloneTargetMenu.find('span').removeAttr('style'); //パララックス if (real_device == 'pc' && device == 'pc' && $bg.data('sp-type') == 1 && !BaseUrl.match(/(dsadmin)/) && !$bg.data('capture')) { $("#header").animate({height: 'hide'}, 'slow'); } $.marquee_init($('#hd-sc-menu')); }, 50); } //閉じるアニメーション(スクロールメニュー) },hidden_hdmenu: function() { if(!$cloneTargetMenu.length) return; if ($cloneTargetMenu.hasClass('is-fixed')) { $cloneTargetMenu.animate({height: 'hide'}, 'slow'); setTimeout(function() { $cloneTargetMenu.removeClass('is-fixed').css('display','none'); $cloneTargetMenu.find('.logo').css('display','none'); }, 500); //パララックス if (real_device == 'pc' && device == 'pc' && $bg.data('sp-type') == 1 && !BaseUrl.match(/(dsadmin)/) && !$bg.data('capture')) { $("#header").animate({height: 'show'}, 'slow'); } } },visible_normal_hdmenu:function(){ if($targetMenu.length){ //パララックス if (real_device == 'pc' && device == 'pc' && $bg.data('sp-type') == 1 && !BaseUrl.match(/(dsadmin)/) && !$bg.data('capture')) { $("#parts1").animate({height: 'hide'}, 'slow'); }else{ $targetMenu.css('position','fixed'); if($heightDiv.length){ $heightDiv.css('display','block'); } } var targetTop = 0; var targetLeft = 0; if(BaseUrl.match(/(dsadmin)/) && $("#ad-preview").length){ targetTop = parseInt($("#ad-preview").css("padding-top"),10); targetLeft = parseInt($("#ad-preview").css("padding-left"),10) / 2;; if(!targetTop) targetTop = ($("#ad-preview").css("margin-top")) ? parseInt($("#ad-preview").css("margin-top"),10) : 0; if(!targetLeft) targetLeft = ($("#ad-preview").css("margin-left")) ? parseInt($("#ad-preview").css("margin-left"),10) / 2 : 0; /* var attr = $bg.attr("data-sp-type"); if( typeof attr !== 'undefined' && attr !== false ){ targetLeft = targetLeft / 2; } */ } $targetMenu.css('top',targetTop); $targetMenu.css('left',targetLeft); $targetMenu.css('z-index','10'); $targetMenu.css('width','100%'); $targetMenu.closest("#header").addClass("normal-hdmenu"); //サブメニュー表示時一階層目が伸びるの防止 if($cloneTargetMenu.length){ $cloneTargetMenu.find('.nav > li').each(function(){ $(this).css('width',$(this).innerWidth() + 1); }); } $.marquee_init($('#hd-sc-menu')); } },hidden_normal_hdmenu:function(){ if($targetMenu.length){ $targetMenu.closest("#header").removeClass("normal-hdmenu"); $targetMenu.css('position',''); if(BaseUrl.match(/(dsadmin)/) && $("#ad-preview").length){ $targetMenu.css('top','0'); $targetMenu.css('left','0'); } //パララックス if (real_device == 'pc' && device == 'pc' && $bg.data('sp-type') == 1 && !BaseUrl.match(/(dsadmin)/) && !$bg.data('capture')) { $("#parts1").animate({height: 'show'}, 'slow'); }else{ if($heightDiv.length){ $heightDiv.css('display','none'); } } } } }); if(!(real_device == 'pc' && device == 'pc' && $bg.data('sp-type') == 1 && !BaseUrl.match(/(dsadmin)/) && !$bg.data('capture'))){ $.scroll_section_init(); } }($)