let userAgent; let isSafari = false; let browserName; // pagination variables let num_per_page = 10; let n = 0; let n_video = 0; let n_columns = 0; let totalPages = { intro: 0, video: 0, columns: 0, vr360: 0, company: 0, }; let filter; const urlParams = new URLSearchParams(window.location.search); let getfilter = urlParams.get('q'); let cid = urlParams.get('cid'); console.log(getfilter, cid); $('.likeSee__views').click(function() { window.location.href = `./index_designerList_mb.html?q=views&cid=${cid}` $(this).css('color', '#EE7800'); }) $('.likeSee__sort').click(function() { window.location.href = `./index_designerList_mb.html?cid=${cid}` $(this).css('color', '#EE7800'); }) function getpathId(){ let query = window.location.search.split('?').pop(); return query.split('=')[1]; } function getQuery() { let query = getfilter; console.log(query); if(query == 'views'){ filter = 'views'; $('.likeSee__views').css('color', '#EE7800'); } else { filter = 'dateSort'; $('.likeSee__sort').css('color', '#EE7800'); } } window.onload = function(){ //window.scrollBy(0, 1); if(screen.width >= 901){ window.location.href = `../index_designerList.html?cid=${cid}`; } userAgent = navigator.userAgent; detectBrowser(userAgent); detectDirection (); let result; let designer; let id = 0; $.ajax({ method: "GET", url: `./json/designers-${cid}.json`, dataType: "json", }).done(function (msg) { getQuery(); designer = [...msg][id]; console.log(designer['Content']); if(filter == 'views'){ designer['Content'][0]['Carddata'].sort(function (a, b){ return a[filter] > b[filter]? -1:1; }) } else { designer['Content'][0]['Carddata'].sort(function (a, b){ return a[filter] > b[filter]? 1:-1; }) } renderinfoCard(designer); renderTab(designer['Content']); renderTabContent(designer['Content'], designer); renderModalTitle(designer['CompanyName']); console.log(filter); console.log(designer['Content'][0]['Carddata']); $(window).scroll(function() { loadMore(designer); }) }); } let over = document.querySelector('.infoContent__navBlock').offsetTop; function detectBrowser(agent){ if(userAgent.match(/chrome|chromium|crios/i)){ browserName = "chrome"; }else if(userAgent.match(/firefox|fxios/i)){ browserName = "firefox"; } else if(userAgent.match(/safari/i)){ browserName = "safari"; }else if(userAgent.match(/opr\//i)){ browserName = "opera"; } else if(userAgent.match(/edg/i)){ browserName = "edge"; }else{ browserName="No browser detection"; } if(browserName === 'safari'){ isSafari = true; } console.log(isSafari); } function detectDirection () { let height = (window.screen.width * 2) / 3; $('.sec-02 .slide-item').css('height', `${height}px`); let topHeight = (window.screen.width * 30) / 131; $('.sec-00 .slide-item').css('height', `${topHeight}px`); $('.sec-00 .container-fluid').css('height', `${topHeight}px`); } function renderinfoCard(designer) { $('.mb__hero__bgImg').attr('backgroundImage', `url(${designer['BannerImg']})`); $('.mb__infoCard__avatar').css('backgroundImage', `url(${designer['Designerimg']})`) $('.mb__infoCard__name').text(designer['DesignerName']); $('.mb__infoCard__seo').text(designer['Description']); $('.mb__infoCard__cmy').text(designer['CompanyName']); if(designer['Approve'] !== '') { $('.mb__infoCard__approve').text(designer['Approve']); } // Basics let str = ''; for(let i = 0;i < designer['Basics'].length; i ++) { str += `` } $('.mb__infoCard__basics').html(str); // Branches let otherStr = ''; for(let i = 0;i < designer['Branches'].length; i ++) { otherStr += `` } $('.mb__infoCard__branches').html(otherStr); // scMedia let mediaStr = ''; for(let i = 0;i < designer['scMedia'].length; i ++) { if(i === 4) { mediaStr += ` `; } else if (i === 3) { mediaStr += ` `; } else { mediaStr += ` `; } } $('.scMedia').html(mediaStr); document.querySelector('.dislike').addEventListener('click', function() { $('.dislike').css('display', 'none'); $('.like').css('display', 'block'); }) document.querySelector('.like').addEventListener('click', function() { $('.dislike').css('display', 'block'); $('.like').css('display', 'none'); }) // term condition let termStr = ''; for(let i = 0;i < designer['Terms'].length; i ++) { termStr += `` } $('.mb__infoCard__terms').html(termStr); } function renderTab(content) { let tabTitleStr = ''; for(let i = 0;i < content.length; i ++) { if(i == 0) { tabTitleStr += `` } else if(content[i]['Display_mb']) { tabTitleStr += `` } } $('#pills-tab').html(tabTitleStr); $('.pill-aside').html(tabTitleStr); } function renderTabContent(content, meta) { let tabStr = ''; for(let i = 0;i < content.length; i ++) { let cardData = '' if(content[i].info) { for(let j = 0;j < content[i].info.length; j ++) { cardData += `

${content[i].info[j].title}

${content[i].info[j].data}
` } tabStr += `
${cardData}
` } else { for(let j = 0;j < (content[i].Carddata.length < num_per_page? content[i].Carddata.length: num_per_page); j ++) { // for(let j = 0;j < content[i].Carddata.length; j ++) { cardData += `
` } if(content[i].Display_mb) { tabStr += `
${cardData}
` let key = content[i]['Tabtag']; totalPages[key] = content[i].Carddata.length; } } } console.log(tabStr); //console.log(totalPages); $('#pills-tabContent').html(tabStr); $('#pills-tabContent').append('
'); $('#pills-intro').addClass('active'); $('#pills-intro').addClass('show'); $('#pills-video .card__bgImg').append('') $('.infoContent .nav-item-link').click(checkTab); checkTab(); $(`
${meta['CompanyName']}
`).insertAfter($('.company__article > .company__block:nth-of-type(1)')); } window.addEventListener('scroll', fixedOnScroll); const navBlock = document.querySelector('.infoContent__navBlock'); function fixedOnScroll() { if(window.innerHeight < window.innerWidth){ } else { detectDirection (); } if(window.pageYOffset >= over){ navBlock.classList.add('tab_sticky'); } else if(window.pageYOffset < over) { navBlock.classList.remove('tab_sticky'); } } $('.navbar-toggler').click(function(){ $(".sec-menu").css('display', 'block'); $(".wholeBody").css('overflow-y', 'hidden'); $('.sec-menu-block').addClass('slidein'); $('.sec-menu-block').removeClass('slideout'); }); $('.navbar-back').click(function(){ $(".sec-menu").css('display', 'none'); $(".wholeBody").css('overflow-y', 'scroll'); $('.sec-menu-block').removeClass('slidein'); $('.sec-menu-block').addClass('slideout'); }); $('.subexpand').click(function(){ $(this).parent().next().toggleClass('show'); $(this).parent().toggleClass('show'); }); $('.navbar-search').click(function(){ $(".sec-search").css('display', 'block'); $(".wholeBody").css('overflow-y', 'hidden'); }) $('.navbar-backs').click(function(){ $(".sec-search").css('display', 'none'); $(".wholeBody").css('overflow-y', 'scroll'); }); $('.navbar-back-fav').click(function(){ $(".sec-favor").css('display', 'none'); }) $('.btn-gotop').click(function () { $('html, body').animate({ scrollTop: 0 }, 500) }); $(window).scroll(function() { if ( $(this).scrollTop() > 500 ){ $('.fixed-btn').fadeIn(222); $('.freeCall').fadeIn(222); } else { $('.fixed-btn').stop().fadeOut(222); $('.freeCall').stop().fadeOut(222); } }).scroll(); const searchBtn = document.querySelector('.searchBtn'); const searchBar = document.querySelector('.searchBar'); const searchHotLink = document.querySelectorAll('.sec-search-hots__link'); searchBtn.addEventListener('click', search); searchBar.addEventListener('keyup', pressSearch); function search() { if(searchBar.value == '') { window.location.href = 'https://m.hhh.com.tw/search/lists/case/'; } else { window.location.href = `https://m.hhh.com.tw/search/lists/case/${searchBar.value}-keyword/`; } } function pressSearch(e) { if (e.keyCode === 13) { e.preventDefault(); search(); } } searchHotLink.forEach((item, i) => { item.addEventListener('click', function() { window.location.href = `https://m.hhh.com.tw/search/lists/case/${this.textContent}-keyword/`; }) }) document.addEventListener('lazybeforeunveil', function(e){ var bg = e.target.getAttribute('data-bg'); if(bg){ e.target.style.backgroundImage = 'url(' + bg + ')'; } }); $('.mb__infoCard__more').click(function() { $(this).hide(); $('.other').css('display', 'block'); over = document.querySelector('.infoContent__navBlock').offsetTop; }) checkTab() $('.infoContent .nav-item-link').click(checkTab); function checkTab() { if($('#pills-intro-tab').hasClass('active')) { $('.likeSee').attr('hidden', false) } else { $('.likeSee').attr('hidden', true) } } function renderModalTitle(title) { $('#emailModal #title').val(title); } function loadMore(designer) { let nowTab = document.querySelector('.infoContent .tab-pane.show'); if(nowTab === document.querySelector('#pills-intro')) { let last = document.querySelector('#pills-intro .work__row>div:last-child'); let pageNum = Math.ceil(totalPages.intro / 10) - 1; if ($(window).scrollTop() + $(window).height() >= ($(document).height() - 100)) { console.log('over'); if(n >= pageNum) { n = pageNum; return; } else { n ++; let append = ''; let d = designer['Content'][0].Carddata.slice(10*n, (10*n)+10); for(let j = 0;j < d.length; j ++) { append += `
` } $('#pills-intro .work__row').append(append); } } } else if (nowTab === document.querySelector('#pills-video')) { let pageNum = Math.ceil(totalPages.video / 10) - 1; console.log(totalPages.video); let last = document.querySelector('#pills-video .work__row>div:last-child'); if ($(window).scrollTop() + $(window).height() >= ($(document).height() - 100)) { if(n_video >= pageNum) { n_video = pageNum; console.log('n-video:', n_video); console.log('pageNum', pageNum); return; } else { console.log('pass-video'); n_video ++; console.log('test'); let append = ''; let d = designer['Content'][1].Carddata.slice(10*n_video, (10*n_video)+10); for(let j = 0;j < d.length; j ++) { append += `
` } $('#pills-video .work__row').append(append); } } } else if (nowTab === document.querySelector('#pills-columns')) { let last = document.querySelector('#pills-columns .work__row>div:last-child'); let pageNum = Math.ceil(totalPages.columns / 10) - 1; if ($(window).scrollTop() + $(window).height() >= ($(document).height() - 100)) { if(n_columns >= pageNum) { n_columns = pageNum; return; } else { n_columns ++; console.log('test'); let append = ''; let d = designer['Content'][2].Carddata.slice(10*n_columns, (10*n_columns)+10); for(let j = 0;j < d.length; j ++) { append += `
` } $('#pills-columns .work__row').append(append); } } } } function putEmail() { const emailPattern = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; if($('#email').val() !== null && emailPattern.test($('#email').val())) { $('#error').hide(); $('#putEmail_hidden').css('display', 'block'); $('#add_email').text($('#email').val()); $('#email').val(''); } else { $('#error').show(); $('#error').text('email 格式有誤'); } }