$(function() { entry = Array(); // entry['gallery/sending-off-the-spirits-of-the-dead-on-lanterns-floated-on-the-waters-of-a-river-or-the-sea'] = "gallery/5465"; entry['gallery/5465'] = "gallery/sending-off-the-spirits-of-the-dead-on-lanterns-floated-on-the-waters-of-a-river-or-the-sea"; // entry['gallery/Circus'] = "gallery/9829"; entry['gallery/9829'] = "gallery/Circus"; // entry['gallery/Beet-raising-seedling-facilities-in-Hokkaido-prefecture'] = "gallery/0057"; entry['gallery/0057'] = "gallery/Beet-raising-seedling-facilities-in-Hokkaido-prefecture"; // entry['gallery/Hanger-in-Hokkaido-prefecture'] = "gallery/7153"; entry['gallery/7153'] = "gallery/Hanger-in-Hokkaido-prefecture"; // entry['gallery/Indoor-gymnasium-in-Hokkaido-prefecture'] = "gallery/8692"; entry['gallery/8692'] = "gallery/Indoor-gymnasium-in-Hokkaido-prefecture"; // entry['gallery/Multipurpose-raising-seedling-facilities-in-Hokkaido-prefecture'] = "gallery/9357"; entry['gallery/9357'] = "gallery/Multipurpose-raising-seedling-facilities-in-Hokkaido-prefecture"; // entry['gallery/Multipurpose-greenhouse-in-Hokkaido-prefecture'] = "gallery/7169"; entry['gallery/7169'] = "gallery/Multipurpose-greenhouse-in-Hokkaido-prefecture"; // entry['gallery/Hangar-in-Hokkaido-prefecture'] = "gallery/5330"; entry['gallery/5330'] = "gallery/Hangar-in-Hokkaido-prefecture"; // entry['gallery/Shiitake-mushroom-bed-cultivating-greenhouse-in-Fukushima-prefecture'] = "gallery/8925"; entry['gallery/8925'] = "gallery/Shiitake-mushroom-bed-cultivating-greenhouse-in-Fukushima-prefecture"; // entry['gallery/Elevated-cultivation-of-pepper-greenhouse-in-Oita-prefecture'] = "gallery/1962"; entry['gallery/1962'] = "gallery/Elevated-cultivation-of-pepper-greenhouse-in-Oita-prefecture"; // entry['gallery/Cold-storage-in-Niigata-prefecture'] = "gallery/0281"; entry['gallery/0281'] = "gallery/Cold-storage-in-Niigata-prefecture"; // entry['gallery/Shiitake-mushroom-bed-cultivating-greenhouse-in-Saitama-prefecture'] = "gallery/4160"; entry['gallery/4160'] = "gallery/Shiitake-mushroom-bed-cultivating-greenhouse-in-Saitama-prefecture"; // entry['gallery/Round-roof-type-tomato-greenhouse-of-consecutive-building-in-Kumamoto-prefecture'] = "gallery/1538"; entry['gallery/1538'] = "gallery/Round-roof-type-tomato-greenhouse-of-consecutive-building-in-Kumamoto-prefecture"; // entry['gallery/Elevated-cultivation-of-strawberry-greenhouse-in-Miyagi-prefecture'] = "gallery/8633"; entry['gallery/8633'] = "gallery/Elevated-cultivation-of-strawberry-greenhouse-in-Miyagi-prefecture"; // entry['gallery/Barn-in-Hokkaido-prefecture'] = "gallery/2862"; entry['gallery/2862'] = "gallery/Barn-in-Hokkaido-prefecture"; // entry['gallery/Elevated-cultivation-of-pepper-greenhouse-in-Kochi-prefecture'] = "gallery/5477"; entry['gallery/5477'] = "gallery/Elevated-cultivation-of-pepper-greenhouse-in-Kochi-prefecture"; // entry['gallery/Multipurpose-greenhouse-in-Hokkaido-prefecture'] = "gallery/8465"; entry['gallery/8465'] = "gallery/Multipurpose-greenhouse-in-Hokkaido-prefecture"; // entry['gallery/Elevated-cultivation-greenhouse-in-Mie-prefecture'] = "gallery/0943"; entry['gallery/0943'] = "gallery/Elevated-cultivation-greenhouse-in-Mie-prefecture"; // entry['gallery/Flower-vase'] = "gallery/1601"; entry['gallery/1601'] = "gallery/Flower-vase"; // entry['gallery/Fishing'] = "gallery/1666"; entry['gallery/1666'] = "gallery/Fishing"; // entry['gallery/Bench'] = "gallery/5464"; entry['gallery/5464'] = "gallery/Bench"; category = Array(); category['about/'] = Array(); category['about/']['title'] = "ABOUT"; category['about/']['description'] = "株式会社リーフの会社概要"; category['about/']['type'] = "page"; category['about/']['pagenation'] = "0"; category['about/']['format'] = "Profile_Format_001"; category['about/']['directory'] = "about/"; category['root'] = Array(); category['root']['title'] = "top"; category['root']['description'] = ""; category['root']['type'] = "page"; category['root']['pagenation'] = "0"; category['root']['format'] = "Part_Content_001"; category['root']['directory'] = "root"; category['gallery'] = Array(); category['gallery']['title'] = "top/GALLERY"; category['gallery']['description'] = "株式会社リーフの施工実績"; category['gallery']['type'] = "ground"; category['gallery']['pagenation'] = "2"; category['gallery']['format'] = "Part_Content_002"; category['gallery']['directory'] = "root"; category['news/'] = Array(); category['news/']['title'] = "INSTAGRAM"; category['news/']['description'] = "株式会社リーフのインスタグラム"; category['news/']['type'] = "page"; category['news/']['pagenation'] = "3"; category['news/']['format'] = "Part_Content_003"; category['news/']['directory'] = "news/"; category['gallery/'] = Array(); category['gallery/']['title'] = "GALLERY"; category['gallery/']['description'] = "株式会社リーフの施工実績一覧"; category['gallery/']['type'] = "page"; category['gallery/']['pagenation'] = "4"; category['gallery/']['format'] = "Part_Content_004"; category['gallery/']['directory'] = "gallery/"; category['camp/'] = Array(); category['camp/']['title'] = "RESERVATION"; category['camp/']['description'] = ""; category['camp/']['type'] = "page"; category['camp/']['pagenation'] = "5"; category['camp/']['format'] = "Part_Content_010"; category['camp/']['directory'] = "camp/"; category['camp/form'] = Array(); category['camp/form']['title'] = "RESERVATION/FORM"; category['camp/form']['description'] = "キャンピングカー予約受付フォーム"; category['camp/form']['type'] = "ground"; category['camp/form']['pagenation'] = "6"; category['camp/form']['format'] = "Part_Content_011"; category['camp/form']['directory'] = "camp/"; category['camp/spec'] = Array(); category['camp/spec']['title'] = "RESERVATION/SPEC"; category['camp/spec']['description'] = "設備・仕様について"; category['camp/spec']['type'] = "ground"; category['camp/spec']['pagenation'] = "7"; category['camp/spec']['format'] = "Part_Content_012"; category['camp/spec']['directory'] = "camp/"; category['camp/information'] = Array(); category['camp/information']['title'] = "RESERVATION/INFORMATION"; category['camp/information']['description'] = "株式会社リーフのインフォメーション"; category['camp/information']['type'] = "ground"; category['camp/information']['pagenation'] = "8"; category['camp/information']['format'] = "Part_Content_013"; category['camp/information']['directory'] = "camp/"; category['camp/information/'] = Array(); category['camp/information/']['title'] = "INFORMATION"; category['camp/information/']['description'] = "株式会社リーフのインフォメーション一覧"; category['camp/information/']['type'] = "page"; category['camp/information/']['pagenation'] = "9"; category['camp/information/']['format'] = "Part_Content_014"; category['camp/information/']['directory'] = "camp/"; function htmlEncode(value){ return $('
').text(value).html(); } function htmlDecode(value){ return $('
').html(value).text(); } var href = ""; var past_href = location.href; var past_directory = $("body").attr("data-directory"); var past_modal_content_type = ""; var memo_scroll = 0; var id = past_href.replace( "https://leafbrand.co.jp/", "" ).replace( "?mode=preview", "" ); var option = ""; function PJAX_pjax( href, option, target ) { var scroll_id = href.replace( "https://leafbrand.co.jp/", "" ).replace( "?mode=preview", "" ); if( scroll_id == "" ){ scroll_id = "root"; } PJAX_scroll_ground( scroll_id, option ); if( href && past_href != href && href.indexOf( "#" ) == -1 ){ scroll_action_flag = false; if( typeof scroll_action_limiter != "undefined" ){ clearTimeout( scroll_action_limiter ); } id = href.replace( "https://leafbrand.co.jp/", "" ).replace( "?mode=preview", "" ); if( typeof entry[id] != "undefined" ){ id = entry[id]; href = href.replace( id, entry[id] ); } past_href = href; if( id == "" ){ // scroll_off(); }else{ // scroll_on(); } console.log("──── pjax ────"); console.log("href: " + href); console.log("id: " + id); console.log("option: " + option); console.log("target: " + target); if( option != "by_scroll" && typeof category[scroll_id] != "undefined" && category[scroll_id]['type'] != "modal" && category[scroll_id]['directory'] == $("body").attr("data-directory") ){ }else if( option != "by_onpop" && option != "by_scroll" && option != "by_load_more" ){ $("body").append('
'); $("body > div.loading").addClass("show"); } if( typeof pjax_request != "undefined" ){ pjax_request.abort(); } pjax_request = $.ajax({ url: "https://leafbrand.co.jp/js_pjax_json.php", data: "id=" + id + "&type=json" + "", dataType: "json", success: function(data, dataType){ var pagetitle = data.pagetitle; var meta_og_image = data.meta_og_image; var permalink = data.permalink; var page_format = data.page_format; var body_class = data.body_class; var path = data.path; var directory = data.directory; var directory_1 = data.directory_1; var directory_2 = data.directory_2; var directory_3 = data.directory_3; var directory_4 = data.directory_4; var file = data.file; var scroll = data.scroll; var page_type = data.page_type; var pagenation = data.pagenation; var index_num = data.index_num; var index_parent_dir = data.index_parent_dir; var modal_content_type = data.modal_content_type; var modal_content_page_format = data.modal_content_page_format; var modal_content_entry_date = data.modal_content_entry_date; var modal_content_entry_title_jp = data.modal_content_entry_title_jp; var modal_content_entry_title_en = data.modal_content_entry_title_en; var modal_content_entry_description_jp = data.modal_content_entry_description_jp; var modal_content_entry_description_en = data.modal_content_entry_description_en; var modal_content_media = data.modal_content_media; if( option != "by_onpop" && // option != "by_forward" && option != "by_load_more" ){ console.log("push"); PJAX_pushState( href, pagetitle ); } document.title = pagetitle; var ga_title = pagetitle; if( option != "by_load_more" ){ $("body").attr("class",body_class); $("body").attr("data-directory",directory); $("body").attr("data-file",file); $("body").attr("data-scroll",scroll); $("body").attr("data-pagenation",pagenation); } console.log("modal_content_type: " + modal_content_type); console.log("past_directory: " + past_directory); console.log("directory: " + directory); console.log("pagenation: " + pagenation); console.log("page_type: " + page_type); // var slsh_to_ub = ground_id.replace( "/", "_" ); // $("#navi nav li").removeClass("active"); // $("#navi nav li").removeClass("p_active"); // var target_nav = $(".class_" + slsh_to_ub + " a"); // target_nav.parent("li").removeClass("over"); // target_nav.parent("li").addClass("active"); // target_nav.closest("li.parent").removeClass("over"); // target_nav.closest("li.parent").addClass("p_active"); if( modal_content_type != "" ){ past_modal_content_type = modal_content_type; PJAX_ajaxload_modal( href, data, option, target ); }else{ if( option != "by_scroll" ){ if( option == "by_load_more" && target != "" ){ PJAX_ajaxload_loadmore( href, data, option, target ); }else if( past_directory != directory ){ past_directory = directory; scrollto(0); PJAX_ajaxload_directory( href, data, option, target ); }else if( past_directory == directory && scroll == "" ){ scroll_action_flag = true; // if( past_modal_content_type == "" ){ // scrollto(0); // }else{ // } }else{ scroll_action_flag = true; if( past_modal_content_type == "" ){ scroll_action_flag = false; var scrollto_val = 0; if( scroll != "" ){ window_resize(); scrollto_val = $("#" + selectorEscape(scroll)).position().top; } scrollto(scrollto_val); }else{ } } } past_modal_content_type = ""; } // if( data.index_num > 1 ){ // option = "by_forward"; // } // if( $("div#entry > *")[0] ){ // $("div#entry").empty(); // $("div#entry").css("top", 0); // } // if( page_type == "entry" ){ // body_class += " " + "modal"; // scroll_action_flag = false; // memo_scroll = $("body #container > div#base").scrollTop(); // $("div#entry").css("top", memo_scroll + "px"); // $("div#entry").removeClass().addClass(id.replace(/\//g, " ")); // $("body").attr("class",body_class); // PJAX_ajax_load( id,data,option ); // }else if( $("body.modal")[0] ){ // $('#container > div#base').animate({ // scrollTop: memo_scroll // }, 1000, "easeOutQuint"); // $("div#entry").removeClass("active"); // $("body").attr("class",body_class); // scroll_action_flag = true; // }else{ // PJAX_ajax_load( id,data,option ); // } $("body > div.loading").removeClass("show"); setTimeout( function(){ $("body > div.loading").remove(); } , 1000); setTimeout( function(){ if( $("body #entry").css("z-index") == -1 ){ $("body #entry").empty(); } } , 2000); }, error: function(XMLHttpRequest, textStatus, errorThrown){ } }); }else{ if( option != "by_scroll" ){ var elm_id = id.replace( /\//, '' ); if( $("#"+elm_id)[0] ){ var target= $("#"+elm_id); var scrollto_val = target.position().top; scrollto(scrollto_val); }else{ scrollto(0); } } } } function PJAX_scroll_ground( scroll_id, option ) { window_resize(); if( option != "by_scroll" && typeof category[scroll_id] != "undefined" && category[scroll_id]['type'] != "modal" && category[scroll_id]['directory'] == $("body").attr("data-directory") ){ if( past_modal_content_type == "" ){ console.log("ground: " + scroll_id); var scrollto_val = 0; if( category[scroll_id]['type'] == "ground" && $("#" + selectorEscape(scroll_id))[0] ){ scrollto_val = $("#" + selectorEscape(scroll_id)).position().top; } scrollto(scrollto_val); }else{ $("body").removeClass("entry modal"); } } } function PJAX_ajaxload_modal( href, data, option, target ) { $("#entry").empty(); if( typeof ajax_request != "undefined" ){ ajax_request.abort(); } ajax_request = $.ajax({ url: href, dataType: "html", success: function(data, dataType){ var get_elm = $('#entry > *', $('
').prepend(data)); $("#entry").append(get_elm); $("#entry > div.inner").addClass("pending"); setTimeout( function(){ $("#entry > div.inner").removeClass("pending"); window_resize(); } , 100); // var container_id = $("body #container > div#base > article").attr("id"); // if( container_id == "root" ){ // container_id = ""; // } // var return_href = "https://leafbrand.co.jp/" + container_id; // $("#entry a.pjax.close").attr("href",return_href); // $("#entry a.pjax.return").attr("href",return_href); img_load(); window_resize(); }, error: function(XMLHttpRequest, textStatus, errorThrown){ } }); } function PJAX_ajaxload_directory( href, data, option, target ) { var scroll = data.scroll; if( typeof ajax_request != "undefined" ){ ajax_request.abort(); } ajax_request = $.ajax({ url: href, dataType: "html", success: function(ajax_data, dataType){ var get_elm = $('#container > div#base > article', $('
').prepend(ajax_data)); $("#container > div#base > article").addClass("leave"); $("#container > div#base").append(get_elm); $("#container > div#base > article").addClass("ajax"); setTimeout( function(){ $("#container > div#base > article.leave").remove(); FB.XFBML.parse(); window_resize(); var scrollto_val = 0; if( scroll != "" ){ scrollto_val = $("#" + selectorEscape(scroll)).position().top; } scrollto(scrollto_val); } , 10); if( data.directory == "root" ){ logo_show(); }else{ logo_hide(); } img_load(); scroll_action_flag = true; }, error: function(XMLHttpRequest, textStatus, errorThrown){ } }); } function PJAX_ajaxload_loadmore( href, data, option, target ) { var scroll = data.scroll; if( typeof ajax_request != "undefined" ){ ajax_request.abort(); } ajax_request = $.ajax({ url: href, dataType: "html", success: function(data, dataType){ target.children("li.load_more").remove(); var get_elm = $('div.index > ul > *', $('
').prepend(data)); target.append(get_elm); img_load(); window_resize(); scroll_action_flag = true; var target_index = target.closest(".index"); if( $("div.index.box_common > ul")[0] ){ show_standby( $("div.index.box_common > ul") ); } }, error: function(XMLHttpRequest, textStatus, errorThrown){ } }); } window.scrollto = function (val) { scroll_action_flag = false; $('#container > div#base').stop().animate({ scrollTop: val }, 1000, "easeOutQuint",function(){ scroll_action_flag = true; }); } function PJAX_pushState( href, title ) { if ( window.history.pushState ) { window.history.pushState( title, null, href ); } else { } } window.onpopstate = function(event){ if (event.state) { } else { } var href = location.href; if ( window.history.pushState ) { PJAX_pjax( href, "by_onpop", "" ); } else { var href = "https://leafbrand.co.jp/#!/" + href.replace( /^.\//, '' ); window.location = href; } } $(document).on("click", "a.pjax", function(){ var href = $(this).attr("href"); if ( window.history.pushState ) { PJAX_pjax( href, "", "" ); } else { var href = href.replace( "https://leafbrand.co.jp/", "" ); var href = "https://leafbrand.co.jp/#!/" + href.replace( /^.\//, '' ); var past_href = location.href; window.location = href; } return false; }); $(document).on("click", "div.index > ul > li.load_more > a.pjax_load_more", function(){ var href = $(this).attr("href"); var target = $(this).closest("ul"); if ( window.history.pushState ) { var parent = $(this).parent(); parent.addClass("loading"); parent.append('
loading
'); PJAX_pjax( href, "by_load_more", target ); } return false; }); $(window).hashchange( function(){ var hash = location.hash; if( hash.indexOf( "#!/" ) != -1 ){ var href = hash.replace( /^#!\//, '' ); if( href == "" ){ var href = "https://leafbrand.co.jp/"; } PJAX_pjax( href, "", "" ); } }) $(window).bind('load', function() { var hash = location.hash; if( hash.indexOf( "#!/" ) != -1 ){ var href = hash.replace( /^#!\//, '' ); if ( window.history.pushState ) { window.location = href; }else{ PJAX_pjax( href, "", "" ); } } }); function scroll_trigger() { if( $(".scroll_trigger")[0] ){ var target = $(".scroll_trigger"); var length = target.length; for(var i=0; i 800 ){ var tracking = 0.5; move_y -= window_height/5; }else{ var tracking = 0.25; move_y -= window_height/4; } if( target_parallax.attr("data-tracking") ){ var tracking = target_parallax.attr("data-tracking"); } target_parallax.css({"transform": "matrix(1, 0, 0, 1, 0, "+ -move_y*tracking +")"}); } } if(target.eq(i).hasClass('action')) continue; var in_position = position + window_height/3; var window_bottom_position = $("body #container > div#base").scrollTop() + $(window).height(); if(in_position < window_bottom_position){ target.eq(i).addClass('action'); if( target.eq(i).find(".index")[0] ){ if( $("div.index.box_common > ul")[0] ){ show_standby( $("div.index.box_common > ul") ); } } } } } } function show_standby( target ){ setTimeout( function(){ if( target.children("li:not(.active)")[0] ){ show_random(target, 200); }else{ show_standby(); } } , 100); } function show_random( target, delay ){ var targets = target.children("li:not(.active)"); var target_num = targets.length; var random_i = Math.floor(Math.random()*target_num); $(targets[random_i]).addClass("active"); targets.splice(random_i,1); if (target_num > 0) { setTimeout(function(){ show_random( target, delay ); },delay); } else { return false; } } function scroll_off(){ var scroll_event = 'onwheel' in document ? 'wheel' : 'onmousewheel' in document ? 'mousewheel' : 'DOMMouseScroll'; $(document).on(scroll_event,function(e){e.preventDefault();}); $(document).on('touchmove.noScroll', function(e) {e.preventDefault();}); } function scroll_on(){ var scroll_event = 'onwheel' in document ? 'wheel' : 'onmousewheel' in document ? 'mousewheel' : 'DOMMouseScroll'; $(document).off(scroll_event); $(document).off('.noScroll'); } if( id == "" ){ // scroll_off(); }else{ // scroll_on(); } var document_height = $(document).height(); var content_height = get_total_height($("#container > div#base > *")); var entry_height = get_total_height($("#entry > div.inner > *")); if( $("html.touch_device")[0] ){ if( window.innerHeight > window.innerWidth ){ var window_height = $(window).height(); }else{ var window_height = $(window).height(); } }else{ var window_height = window.innerHeight ? window.innerHeight: $(window).height(); } var window_width = $(window).width(); var window_ratio = window_height / window_width; var scroll_val = $("body #container > div#base").scrollTop(); var scroll_action_flag = true; if( $("body.modal")[0] ){ scroll_action_flag = false; } if( $("body.entry")[0] ){ scroll_action_flag = false; } function base_scroll() { scroll_trigger(); scroll_val = $("body #container > div#base").scrollTop(); if( $("article#root > article#top")[0] ){ $("div#bg > div#viewer").css({ "transform": "matrix(1, 0, 0, 1, 0, "+ (-scroll_val/2) +")" }); $("header#top_logo").css({ "transform": "matrix(1, 0, 0, 1, 0, "+ (scroll_val/3) +")" }); $("div#bg > div#viewer > div#top_img > div.img_parts.top > div.img_parts.top_bg > div.bg_01 > img").css({ "transform": "matrix(1, 0, 0, 1, 0, "+ (scroll_val/4) +")" }); $("div#bg > div#viewer > div#top_img > div.img_parts.top > div.img_parts.top_bg > div.bg_02 > img").css({ "transform": "matrix(1, 0, 0, 1, 0, "+ (scroll_val/10) +")" }); } if( $("article#camp\\/ > article#top")[0] ){ $("article#camp\\/ > article#top > div.inner > div.img.bg > img").css({ "transform": "matrix(1, 0, 0, 1, 0, "+ (scroll_val/2) +")" }); } // console.log(scroll_val+window_height+"|"+content_height); if( scroll_val+window_height > content_height - 100 ){ $("html").addClass("scrolled") $("html").addClass("scrollend") }else if( scroll_val < Math.round(window_height/5) ){ $("html").removeClass("scrolled") $("html").removeClass("scrollend") }else if( scroll_val >= Math.round(window_height/5) && scroll_val+window_height < content_height - 100 ){ $("html").addClass("scrolled") $("html").removeClass("scrollend") }else{ $("html").addClass("scrolled") $("html").addClass("scrollend") } if( $("html.iOS")[0] ){ scrollbar_height = parseInt(window_height * window_height / content_height); $('.scrollbar_thumb').css('height', scrollbar_height); var scrollbar_track = window_height - scrollbar_height; var scrollbar_offset = scroll_val * scrollbar_track / (content_height - window_height); $('.scrollbar_thumb').css('transform', 'translateY(' + scrollbar_offset + 'px)'); } if( scroll_action_flag === true && $("body #container > div#base article.ground")[0] ){ scroll_action_flag = false; if( typeof scroll_action_limiter != "undefined" ){ clearTimeout( scroll_action_limiter ); } scroll_action_limiter = setTimeout( function(){ $("body #container > div#base article.ground").each(function(){ if( $(this).attr("id") != null ){ var ground_id = $(this).attr("id"); if( typeof category[ground_id] != "undefined" ){ var ground_offset = $("#" + selectorEscape( ground_id )).position().top; var ground_height = $("#" + selectorEscape( ground_id )).height(); if( scroll_val >= ground_offset && scroll_val <= ground_offset + ground_height ){ // console.log(id); // console.log(ground_id); var href = "https://leafbrand.co.jp/" + ground_id; // console.log("scroll::"+href); PJAX_pjax( href, "by_scroll", "" ); }else if( scroll_val < $("body #container > div#base article.ground").first().position().top ){ if( $("body").attr("data-scroll") != "" ){ var scroll_split = $("body").attr("data-scroll").split('/'); var ground_directory = $("body").attr("data-scroll").replace( scroll_split[scroll_split.length-1], "" ); var href = "https://leafbrand.co.jp/" + ground_directory; // console.log("top::"+href); PJAX_pjax( href, "by_scroll", "" ); } } } } }); scroll_action_flag = true; } , 1000); } } function entry_scroll() { scroll_val = $("#entry > div.inner").scrollTop(); if( scroll_val+window_height > entry_height - 100 ){ $("html").addClass("scrolled") $("html").addClass("scrollend") }else if( scroll_val < Math.round(window_height/5) ){ $("html").removeClass("scrolled") $("html").removeClass("scrollend") }else if( scroll_val >= Math.round(window_height/5) && scroll_val+window_height < entry_height - 100 ){ $("html").addClass("scrolled") $("html").removeClass("scrollend") }else{ $("html").addClass("scrolled") $("html").addClass("scrollend") } } function window_resize() { document_height = $(document).height(); content_height = get_total_height($("#container > div#base > *")); entry_height = get_total_height($("#entry > div.inner > *")); if( $("html.touch_device")[0] ){ if( window.innerHeight > window.innerWidth ){ window_height = $(window).height(); }else{ window_height = $(window).height(); } }else{ window_height = window.innerHeight ? window.innerHeight: $(window).height(); } window_width = $(window).width(); window_ratio = window_height / window_width; if( window_ratio > 1 ){ $("html").removeClass("horizontal"); $("html").addClass("portrait"); }else{ $("html").removeClass("portrait"); $("html").addClass("horizontal"); } if( window_ratio < 0.6 ){ $("html").addClass("panorama"); }else{ $("html").removeClass("panorama"); } $("body").css({"height": window_height}); if( $("article#root > article#top")[0] ){ $("article#root > article#top").css({"height": window_height*1.5}); } if( $("article#camp\\/ > article#top")[0] ){ $("article#camp\\/ > article#top").css({"height": window_height}); } if( $("body #container > div#base > article")[0] ){ var article_margin = (window_height - $("body #container > div#base > article").height())/2; if( article_margin < 0 ){ article_margin = 0; } $("body #container > div#base > article").css({"padding-top": article_margin,"padding-bottom": article_margin}); // console.log(article_margin); } base_scroll(); entry_scroll_bind(); entry_scroll(); } var scroll_flug = true; $("body #container > div#base").scroll(function(){ base_scroll(); // if(scroll_flug){ // scroll_flug = false; // base_scroll(); // setTimeout(function(){ // scroll_flug = true; // return scroll_flug; // }, 50); // } }); function entry_scroll_bind(){ $("html").removeClass("scrolled"); $("html").removeClass("scrollend"); $("#entry > div.inner").scroll(function(){ entry_scroll(); // if(scroll_flug){ // scroll_flug = false; // base_scroll(); // setTimeout(function(){ // scroll_flug = true; // return scroll_flug; // }, 50); // } }); } entry_scroll_bind(); $(window).bind("resize", window_resize); function selectorEscape(val){ return val.replace(/\//g, '\\/'); } function logo_hide(){ $("header#top_logo").removeClass("start"); $("header#top_logo > h1 > div > *").hide(); video_stop(); } function logo_show(){ if( $("body.root")[0] ){ $("header#top_logo > h1 > div > *").show(); $("header#top_logo").addClass("start"); if( $("html.ie")[0] || $("html.edge")[0] ){ svg_play("logo_svg"); }else{ $("header#top_logo > h1 > div > *").attr("class","start"); } video_play(); } } function video_stop(){ $("article#top > div.inner > div.video > ul > li.video_1.part").removeClass("active"); setTimeout(function(){ $("article#top > div.inner > div.video > ul > li.video_1.part > div").empty(); $("article#top > div.inner > div.video > ul > li.video_2.part").removeClass("active"); setTimeout(function(){ $("article#top > div.inner > div.video > ul > li.video_2.part > div").empty(); },1000); },1000); } function video_play(){ if( $("body.root")[0] ){ setTimeout(function(){ $("article#top > div.inner > div.video > ul > li.video_1.part").addClass("active"); create_video( $("article#top > div.inner > div.video > ul > li.video_1.part > div") , "https://leafbrand.co.jp/elements/video_01" , "video_01" ); setTimeout(function(){ $("article#top > div.inner > div.video > ul > li.video_2.part").addClass("active"); create_video( $("article#top > div.inner > div.video > ul > li.video_2.part > div") , "https://leafbrand.co.jp/elements/video_02" , "video_02" ); setTimeout(function(){ $("article#top > div.inner > div.video > ul > li.part > div > img").fadeIn(1000); },1000); },500); },4000); } // if( $("body.root")[0] ){ // setTimeout(function(){ // $("article#top > div.inner > div.video > ul > li.video_1.part").addClass("active"); // create_video( $("article#top > div.inner > div.video > ul > li.video_1.part > div") , "https://test:1111@leafbrand.co.jp/elements/video_01" , "video_01" ); // setTimeout(function(){ // $("article#top > div.inner > div.video > ul > li.video_2.part").addClass("active"); // create_video( $("article#top > div.inner > div.video > ul > li.video_2.part > div") , "https://test:1111@leafbrand.co.jp/elements/video_02" , "video_02" ); // setTimeout(function(){ // $("article#top > div.inner > div.video > ul > li.part > div > img").fadeIn(1000); // },1000); // },500); // },4000); // } } function create_video(target, video_file, target_id) { if( $("html.touch_device.iOS")[0] ) { var width = target.outerWidth(); var height = target.outerHeight(); target.append(''); setTimeout(function(){ target.parent().addClass("play"); var video = document.createElement('video'); video.style.display = 'none'; document.body.appendChild(video); var canvas = document.getElementById('video_canvas_'+target_id); $(canvas).css({"display": "block"}); var ctx = canvas.getContext("2d"); var ctime = 0; var lastTime; video.addEventListener('canplay',function(){ lastTime = Date.now(); setInterval(function(){ var curTime = Date.now(); var diff = Date.now() - lastTime; lastTime = curTime; ctime += diff/1000; video.currentTime = ctime; ctx.drawImage(video, 0, 0, width, height); if(video.duration <= video.currentTime){ ctime = 0; } }, 1000/30); },false); video.src = video_file +'.mp4?24042822'; video.load(); },1000); }else{ target.append(''); setTimeout(function(){ target.parent().addClass("play"); target.find("video").each(function(){ if( ! $(this).hasClass("play") ){ $(this).addClass("play"); $(this).get(0).play(); } }); },1000); } } function svg_play(id){ var svg1 = document.getElementById(id); window.requestAnimFrame = function(){ return ( function( callback ){ window.setTimeout(callback, 1000 / 60); //60fps } ); }(); var current_frame = 0; var total_frame = 72; var handle = 0; var paths = new Array(); var length = new Array(); var rendered = false; [].slice.call( svg1.querySelectorAll('path') ).forEach( function( path, i ) { paths[i] = path; var l = paths[i].getTotalLength() + 30; length[i] = l; paths[i].style.strokeDasharray = l + ' ' + l; paths[i].style.strokeDashoffset = l; } ); function draw(){ progress = current_frame/total_frame; if (progress > 1) { window.clearTimeout(handle); } else { current_frame++; for(var j=0, len = paths.length; j 0 ){ img_arr.each(function(indx){ img[indx] = new Image(); img[indx].onload = function(){ img_arr_lngth = img_arr_lngth - 1; var progress = Math.round((1-img_arr_lngth/img_arr_lngth_total)*100); $("div.progress").stop().animate({"width": progress + "%"},2000); if( 0 >= img_arr_lngth ){ $("html").data("preloaded", 1); $("div.progress").stop().animate({"width": "100%"},1500,"easeOutQuad",function(){ setTimeout(function(){ $("div.progress").addClass("out"); setTimeout(function(){ $("div#preloader").fadeOut(1000, function() { $(this).remove(); window_resize(); $("html").addClass("start"); logo_show(); }); },1000); },200); }); } }; img[indx].src = $(this).attr('src'); }); }else{ $("html").data("preloaded", 1); $("div#progress").stop().animate({"width": "100%"},1500,"easeOutQuad",function(){ $.getScript("https://leafbrand.co.jp/js/3d.js?1707063", function(){ }); setTimeout(function(){ $("div.progress").addClass("out"); setTimeout(function(){ $("div#preloader").fadeOut(2000, function() { $(this).remove(); window_resize(); }); },1000); },200); }); } } function img_load(){ $("img.preload:not('.loaded')").each(function(){ $(this).imagesLoaded(function(){ $(this).addClass("loaded"); window_resize(); }); }); } $("div#preloader > div.bg > div.logo_wrapper > img.logo").imagesLoaded(function(){ $("div#preloader > div.bg").addClass("show"); preload(); }); $(window).bind('load', function() { img_load(); window_resize(); if( $("body #container > div#base article.ground")[0] ){ scroll_action_flag = false; var target = $("#" + selectorEscape($("body").attr("data-scroll"))); if( target[0] ){ var val = target.position().top; scrollto(val); } } }); function get_total_height(elms) { var total_height = 0; elms.each(function(i){ var height = $(this).outerHeight(true); total_height += height; }); return total_height; } });