// 处于页面配置时,绑定方法 start if ($isDecorateMode) { document.addEventListener("diy_header/1", (event) => { const { field, value } = event.detail; console.log(field, value) if (field === 'hots') { let html = '' value.forEach(e => { html += `${e.name}` }) $('.' + field).html(html) } }); } // 处于页面配置时,绑定方法 end $(function () { $("#logout").click(function () { $request .post("/api/user/logout") .then((res) => { // 跳转页面 location.href = "/"; }); }) // 防止一开始进入页面在底部不显示 setHeaderSticky() $(window).scroll(setHeaderSticky) function setHeaderSticky(){ let offset = $("html,body").scrollTop() if (offset) { $('.ys-header').addClass('is-sticky') } else { $('.ys-header').removeClass('is-sticky') } } // 导航栏悬停 $('.ys-header__nav .nav-item').hover(function () { $(this).find('.ys-header__card').addClass('show') if(!$(this).hasClass('ignore')) $('.ys-header__cover').removeClass('display-none') }, function () { $(this).find('.ys-header__card').removeClass('show') $('.ys-header__cover').addClass('display-none') }) // 产品中心悬停 $('.ys-header__nav .product-item').hover(function () { $('.ys-header__nav .product-child').addClass('display-none') $('.ys-header__nav .product-item').removeClass('active') $(this).addClass('active') $(this).next().removeClass('display-none') }) // 搜索框悬停事件 $('.ys-header__search').focus(function () { $('.ys-header__nav').addClass('display-none') $('.ys-header__right').addClass('open') }, function() { if (!$('.ys-header__search-card').hasClass('show')) { $('.ys-header__nav').removeClass('display-none') $('.ys-header__right').removeClass('open') } }) // 搜索框聚焦事件 $('.ys-header__search input').focus(function () { openSearchCard() }) $('.ys-header__search-card .icon-close').click(function () { closeSearchCard() }) $(document).on('click', function (e) { if (!$('.ys-header__search-card')[0].contains(e.target) && !$('.ys-header__search input').is(':focus')) { closeSearchCard() } }) // 搜索 $('.ys-header__search input').keyup(function (e) { if (e.keyCode === 13) { search() } }) $('.ys-header__search .search-btn').click(function () { search() }) // 清空历史记录 $('.ys-header__search-card .search-history span').click(function () { localStorage.removeItem('searchHistory') setHistory() }) // 展开搜索卡片 function openSearchCard() { $('.ys-header__nav').addClass('display-none') $('.ys-header__search-card').addClass('show') $('.ys-header__cover').removeClass('display-none') $('.ys-header__right').addClass('open') } // 收起搜索卡片 function closeSearchCard() { $('.ys-header__nav').removeClass('display-none') $('.ys-header__search-card').removeClass('show') $('.ys-header__cover').addClass('display-none') $('.ys-header__right').removeClass('open') } // 搜索事件 function search() { let val = $('.ys-header__search input').val() if (!val) return $message.warning('请输入搜索关键词') let history = JSON.parse(localStorage.getItem('searchHistory')) || [] history.unshift(val) history = [...new Set(history)] localStorage.setItem('searchHistory', JSON.stringify(history.slice(0, 10))) window.open('/search_result.html?keyword=' + val) closeSearchCard() setHistory() } // 设置搜索历史 function setHistory() { let history = JSON.parse(localStorage.getItem('searchHistory')) || [] let html = '' history.forEach(e => { html += `${e}` }) $('.ys-header__search-card .search-history .search-words').html(html) } setHistory() }) // 客服 $('.ys-header-shortcut__server span').click(function(){ window.dispatchEvent( new CustomEvent('openService') ) }) if ($(".ys-product__list .grid-item").length) { $(".c-pagination").html(""); $(".c-pagination").zPager({ totalData: +$(".ys-product__spu .ys-product__total span").text(), pageStep: 5, current: 1, pageData: 32, }); } // 分页 function currentPage(currentPage) { window.dispatchEvent( new CustomEvent("current_page", { detail: currentPage, }) ); } function changePager(sizes) { window.dispatchEvent( new CustomEvent("pager_change", { detail: sizes, }) ); } $(function () { window.addEventListener("product_filter", filter); // 监听筛选结果 window.addEventListener("pager_change", pagerChange); // 监听分页条数变化 window.addEventListener("current_page", currentPage); // 监听页码变化 const params = { page: 1, pageSize: 32, attributes: {}, keyword: "", category_id: "", }; const result = { type: -1, total: 0, list: [], }; let filters = []; function filter(e) { filters = e.detail.filters; if (e.detail.category_id) params.category_id = e.detail.category_id; params.attributes = {}; filters.forEach((e) => { params.attributes[e.pid] = +e.id; }); params.page = 1; result.list = []; request(); } function pagerChange(e) { params.pageSize = +e.detail; params.page = 1; result.list = []; request(); } function currentPage(e) { if (e.detail == params.page) return; params.page = +e.detail; request(); } function request() { if ($(".ys-product__spu").data("category_id")) params.category_id = $(".ys-product__spu").data("category_id"); result.type = 0; $loading.start(); $request .get("/api/goods/spu/list", { params }) .then((res) => { if (res.data && res.data.redirect_url) { window.location.href = res.data.redirect_url; return; } window.dispatchEvent( new CustomEvent("product_options", { detail: { options: res.data.options, }, }) ); $(".ys-product__cate").remove(); if (result.type === 0 && res.data.total > 1) { $(".ys-product__sku").css("display", "none"); $(".ys-product__spu .ys-product__search").removeClass("display-none"); $( ".ys-product__spu .ys-product__search .ys-product__total span" ).html(res.data.total); $(".ys-product__spu .ys-product__search input").val(params.keyword); $(".ys-product__list").removeClass("display-none"); result.list = res.data.list; result.total = res.data.total; let spu_html = ""; if (result.list.length) { result.list.forEach((e) => { spu_html += `
`; }); $(".c-pagination").html(""); $(".c-pagination").zPager({ totalData: result.total, pageStep: 5, current: params.page, pageData: params.pageSize, }); } else { $(".c-pagination").html(""); spu_html += `抱歉,没有找到相关的内容
抱歉,没有找到相关的内容