$(function () { // 获取url地址栏参数函数 function getUrlParams() { const url = window.location.href; // 判断是否有参数 if (url.indexOf("?") === -1) { return {}; } const params = url.split("?")[1]; const paramsArr = params.split("&"); const paramsObj = {}; paramsArr.forEach((item) => { const key = item.split("=")[0]; const value = item.split("=")[1]; // 解析中文 paramsObj[key] = decodeURI(value); }); return paramsObj; } //设置cookie function setCookie(c_name, value, expiredays = 1) { const exdate = new Date(); exdate.setDate(exdate.getDate() + expiredays); document.cookie = c_name + "=" + value + (";expires=" + exdate.toGMTString()); } // 判断首页是否为推荐页面 function isRecommend() { const urlParams = getUrlParams(); if (urlParams.recommend_c) { setCookie("recommend_c", urlParams.recommend_c); } } isRecommend(); let bannerData = []; let bannerTextTimer = null; const updateBannerText = (index) => { if (!Array.isArray(bannerData) || bannerData.length === 0) { return; } const idx = index >= 0 && index < bannerData.length ? index : 0; const item = bannerData[idx] || {}; // 标签渲染:标题上方的小块标签 const $tagsWrap = $("#bannerTags"); if ($tagsWrap.length) { $tagsWrap.empty(); const rawTags = item.tags || ""; const tags = rawTags .split(/[,,]/) .map((t) => t.trim()) .filter((t) => t); tags.forEach((tag) => { $tagsWrap.append( `` ); }); if (tags.length === 0) { $tagsWrap.hide(); } else { $tagsWrap.show(); } } $("#bannerTitle").text(item.title || ""); $("#bannerDesc").text(item.description || ""); const $btn = $("#bannerButton"); if (item.button_text) { const link = item.button_link || item.url || "javascript:;"; const target = item.button_blank ? "_blank" : "_self"; $btn .text(item.button_text) .attr("href", link) .attr("target", target) .show(); } else { $btn.hide(); } }; // 简单的文案轮播(不再使用 Swiper 图片,仅轮播标题/描述/按钮) const startBannerTextLoop = () => { if (!Array.isArray(bannerData) || bannerData.length === 0) { return; } let current = 0; // 初始化先展示第一条 updateBannerText(current); // 清理旧定时器 if (bannerTextTimer) { clearInterval(bannerTextTimer); bannerTextTimer = null; } // 只有一条时不需要轮播 if (bannerData.length === 1) { return; } bannerTextTimer = setInterval(() => { current = (current + 1) % bannerData.length; // 淡入动画:先让文案透明,再渐显 const $copy = $(".banner-copy"); $copy .stop(true, true) .css({ opacity: 0 }) .animate({ opacity: 1 }, 400); updateBannerText(current); }, 5000); }; // 设置首页函数:直接使用服务端注入的 window.__themeCommon(SSR 数据),避免再次请求配置 function setIndexData() { const commentObj = window.__themeCommon ? window.__themeCommon : (sessionStorage.commentData ? JSON.parse(sessionStorage.commentData) : {}); bannerData = commentObj.banner || []; // 仅轮播文案 startBannerTextLoop(); if (Array.isArray(commentObj.honor) && commentObj.honor.length > 0) { commentObj.honor.forEach((item) => { $("#certBox").append(`

${item.name}

`); }); } if (Array.isArray(commentObj.partner) && commentObj.partner.length > 0 && commentObj.partner.length <= 3) { commentObj.partner.forEach((item) => { $("#practiceBox").append(`
${item.description}

${item.name}

`); }); } else if (Array.isArray(commentObj.partner) && commentObj.partner.length > 3) { const arr1 = commentObj.partner.slice(0, 3); const arr2 = commentObj.partner.slice(3); arr1.forEach((item) => { $("#practiceBox").append(`
${item.description}

${item.name}

`); }); $("#morPracticeBox").attr("style", "display: flex;"); arr2.forEach((item) => { $("#morPracticeBox").append(`
`); }); } } // 首页直接使用服务端注入的数据渲染(SSR),不再请求 /console/v1/common 或 /console/v1/theme/config setIndexData(); var viewer = new Viewer(document.getElementById("viewer"), { button: true, inline: false, zoomable: true, title: true, tooltip: true, minZoomRatio: 0.5, maxZoomRatio: 100, movable: true, interval: 2000, navbar: true, loading: true, }); // 点击显示图片 $(".cert-item,.practice-box,.brand-box").click(function () { // 设置图片 $("#viewer").attr("src", $(this).find("img").attr("src")); viewer.show(); }); function formateTimeFun(time) { const date = new Date(time * 1000); Y = date.getFullYear() + "-"; M = (date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1) + "-"; D = date.getDate() < 10 ? "0" + date.getDate() : date.getDate(); return Y + M + D; } // 公告列表 function getAnnounceList() { $.ajax({ url: "/console/v1/announcement", method: "get", data: { page: 1, limit: 5, }, success: function (res) { const announceList = res.data.list; announceList.forEach((item, index) => { $("#announceList").append(`
${index + 1}
${item.title}
${formateTimeFun(item.create_time)}
`); }); }, }); } getAnnounceList(); // 新闻列表 function getNewsList() { $.ajax({ url: "/console/v1/news", method: "get", data: { page: 1, limit: 5, }, success: function (res) { const announceList = res.data.list; announceList.forEach((item, index) => { $("#newsList").append(`
${index + 1}
${item.title}
${formateTimeFun(item.create_time)}
`); }); }, }); } getNewsList(); $("#myTabs a").click(function (e) { e.preventDefault(); $(this).tab("show"); }); // 跳转函数 function goOtherPage(url) { location.href = url; } $("#cloud-box").click(function () { location.href = "cloud.html"; }); $("#domain-box").click(function () { location.href = "domain.html"; }); $("#recomment-box").click(function () { location.href = "/home.htm"; }); $("#logon-box").click(function () { location.href = "/regist.htm"; }); $("#cps-box").click(function () { location.href = "partner/cps.html"; }); });