outlet.page.js 3 KB
require('scss/product/outlet/index.page.scss');

let $ = require('yoho-jquery'),
    Swiper = require('yoho-swiper2'),
    lazyLoad = require('yoho-jquery-lazyload'),
    ajaxActivityTime = require('./outlet/ajaxActivityTime');

let $el = $('.cd-lite');
let $categoryNavItem = $('.outlet-category-nav a');
let $categoryNav = $('.outlet-category-nav');

let search = require('./sale/search');

require('./outlet/nav');

require('./outlet/fix-nav');
require('./outlet/set-backurl');

lazyLoad($('img.lazy'));

// 搜索条件初始化
function searchInitParam(dom) {
    let href = dom.attr('href'),
        querys = href.split('?')[1].split('&');

    let query = {};

    querys.forEach(function(value) {
        let queryPairs = value.split('='),
            key = queryPairs[0],
            val = queryPairs[1];

        if (key === 'actiontype') {
            return;
        }

        query[key] = val;
    });

    return query;
}

if ($el.length > 0) {
    setTimeout(function() {
        ajaxActivityTime({
            type: 0, // 获取全部奥莱活动列表, 不区分是否将开始或结束
            yh_channel: window.queryString.yh_channel
        });
    }, 500);
}


if ($('.swiper-container .swiper-slide').length > 1) {
    new Swiper('.swiper-container', {
        lazyLoading: true,
        lazyLoadingInPrevNext: true,
        loop: true,
        autoplay: 3000,
        autoplayDisableOnInteraction: true,
        paginationClickable: true,
        pagination: '.banner-top .pagination-inner'
    });
}



$categoryNavItem.on('click', function(e) {
    let query = searchInitParam($(this));

    $('.category a').removeClass('active');
    $(this).addClass('active');

    e.preventDefault();

    search.start({
        type: 'category'
    }, query);
});

// 触发第一个search
if ($categoryNavItem.length > 0) {
    // $categoryNavItem.eq(0).trigger('click');
    setTimeout(function() {
        search.start({
            type: 'category'
        }, searchInitParam($categoryNavItem.eq(0)));
    }, 500);
}

// 导航滚动
// if ($('#index_nav').length > 0) {
//     iscroll({
//         el: '#index_nav'
//     }).goto($('#index_nav').find('.active').index());
// }

// if ($('.outlet-category-nav').length > 0) {
//     iscroll({
//         el: '.outlet-category-nav'
//     }).goto(0);
// }

// 更多活动按钮
// if ($('.back-ground-white').length > 10) {
//     $('.more-activity').show();
//     $('.back-ground-white').each(function(index, e) {
//         if (index > 9) {
//             $(e).hide();
//         }
//     });
// }

// $('.more-activity').click(function() {
//     $('.more-activity').hide();
//     $('.back-ground-white').each(function(index, e) {
//         if (index > 9) {
//             $(e).show();
//         }
//     });
// });

// 页面(包括图片在内)全部加载完才能设置导航悬浮效果,否则位置结算会不准

if (navigator.userAgent.indexOf('UCBrowser') === -1) {
    window.onload = function() {
        $categoryNav.fixNav({
            autoRollTop: true
        });
    };
}