|
@@ -2,8 +2,11 @@ let userAgent;
|
|
|
let isSafari = false;
|
|
|
let browserName;
|
|
|
|
|
|
-let num_per_page = 9;
|
|
|
+// pagination variables
|
|
|
+let num_per_page = 10;
|
|
|
let n = 0;
|
|
|
+let n_video = 0;
|
|
|
+let n_columns = 0;
|
|
|
let totalPages = {
|
|
|
intro: 0,
|
|
|
video: 0,
|
|
@@ -67,15 +70,24 @@ window.onload = function(){
|
|
|
getQuery();
|
|
|
designer = [...msg][id];
|
|
|
console.log(designer['Content']);
|
|
|
- designer['Content'][0]['Carddata'].sort(function (a, b){
|
|
|
- return a[filter] > b[filter]? -1:1;
|
|
|
- })
|
|
|
+ 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']);
|
|
|
+ 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;
|
|
@@ -217,7 +229,7 @@ function renderTab(content) {
|
|
|
}
|
|
|
|
|
|
|
|
|
-function renderTabContent(content) {
|
|
|
+function renderTabContent(content, meta) {
|
|
|
let tabStr = '';
|
|
|
for(let i = 0;i < content.length; i ++) {
|
|
|
let cardData = ''
|
|
@@ -242,7 +254,8 @@ function renderTabContent(content) {
|
|
|
</div>`
|
|
|
|
|
|
} else {
|
|
|
- for(let j = 0;j < content[i].Carddata.length; j ++) {
|
|
|
+ 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 += `<div class="col-6 col-md-4">
|
|
|
<a href="" target="_blank">
|
|
|
<div class="card">
|
|
@@ -284,6 +297,16 @@ function renderTabContent(content) {
|
|
|
$('#pills-video .card__bgImg').append('<img src="https://hhh.com.tw/assets/images/rv_web/play.svg" alt="" width="50" height="50">')
|
|
|
$('.infoContent .nav-item-link').click(checkTab);
|
|
|
checkTab();
|
|
|
+ $(`<div id="fb-container" style="width: 320px;" class="mx-auto">
|
|
|
+ <div class="fb-page" data-href="${meta['FB_link']}" data-tabs="timeline" data-width="320" data-height="700" data-small-header="false" data-adapt-container-width="true" data-hide-cover="false" data-show-facepile="true">
|
|
|
+ <blockquote cite="${meta['FB_link']}" class="fb-xfbml-parse-ignore">
|
|
|
+ <a href="${meta['FB_link']}">${meta['CompanyName']}</a>
|
|
|
+ </blockquote>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <script async defer crossorigin="anonymous" src="https://connect.facebook.net/zh_TW/sdk.js#xfbml=1&version=v9.0" nonce="7TsDzQN7"></script>
|
|
|
+ `).insertAfter($('.company__article > .company__block:nth-of-type(1)'));
|
|
|
+
|
|
|
}
|
|
|
|
|
|
window.addEventListener('scroll', fixedOnScroll);
|
|
@@ -407,6 +430,124 @@ 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 += `<div class="col-6 col-md-4">
|
|
|
+ <a href="" target="_blank">
|
|
|
+ <div class="card">
|
|
|
+ <div style="overflow: hidden;">
|
|
|
+ <div class="card__bgImg" style="background-image: url(${d[j]['imgURL']});">
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="card-body">
|
|
|
+ <h5 class="card-title card__title mt-0">${d[j]['title']}</h5>
|
|
|
+ <p class="card-text mb-0">
|
|
|
+ <a href="" class="card__tag" target="_blank">混搭風</a>
|
|
|
+ <a href="" class="card__tag" target="_blank">混搭風</a>
|
|
|
+ <a href="" class="card__tag" target="_blank">混搭風</a>
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </a>
|
|
|
+ </div>`
|
|
|
+ }
|
|
|
+ $('#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 += `<div class="col-6 col-md-4">
|
|
|
+ <a href="" target="_blank">
|
|
|
+ <div class="card">
|
|
|
+ <div style="overflow: hidden;">
|
|
|
+ <div class="card__bgImg" style="background-image: url(${d[j]['imgURL']});">
|
|
|
+ <img src="https://hhh.com.tw/assets/images/rv_web/play.svg" alt="" width="50" height="50">
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="card-body">
|
|
|
+ <h5 class="card-title card__title mt-0">${d[j]['title']}</h5>
|
|
|
+ <p class="card-text mb-0">
|
|
|
+ <a href="" class="card__tag" target="_blank">混搭風</a>
|
|
|
+ <a href="" class="card__tag" target="_blank">混搭風</a>
|
|
|
+ <a href="" class="card__tag" target="_blank">混搭風</a>
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </a>
|
|
|
+ </div>`
|
|
|
+ }
|
|
|
+ $('#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 += `<div class="col-6 col-md-4">
|
|
|
+ <a href="" target="_blank">
|
|
|
+ <div class="card">
|
|
|
+ <div style="overflow: hidden;">
|
|
|
+ <div class="card__bgImg" style="background-image: url(${d[j]['imgURL']});">
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="card-body">
|
|
|
+ <h5 class="card-title card__title mt-0">${d[j]['title']}</h5>
|
|
|
+ <p class="card-text mb-0">
|
|
|
+ <a href="" class="card__tag" target="_blank">混搭風</a>
|
|
|
+ <a href="" class="card__tag" target="_blank">混搭風</a>
|
|
|
+ <a href="" class="card__tag" target="_blank">混搭風</a>
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </a>
|
|
|
+ </div>`
|
|
|
+ }
|
|
|
+ $('#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())) {
|