debug
This commit is contained in:
155
code/public/template/shikong/huiyuan/js/cctv/common.js
Normal file
155
code/public/template/shikong/huiyuan/js/cctv/common.js
Normal file
@@ -0,0 +1,155 @@
|
||||
import CctvsJs from '../class/cctv.js';
|
||||
const Cctvs = new CctvsJs();
|
||||
import ConfigsJs from '../class/config.js';
|
||||
const Configs = new ConfigsJs();
|
||||
let arrConfigs = Configs.getAll()
|
||||
|
||||
// 公共广告
|
||||
const CommonCctv = {
|
||||
|
||||
init(){
|
||||
|
||||
if(document.querySelector(".j-cctv-list-page")){
|
||||
this.initVideoList()
|
||||
}
|
||||
|
||||
// this.initBannerBottomPiao()
|
||||
this.initPlBannerBottomPiao()
|
||||
|
||||
Cctvs.addEvent() //切勿多次调用监听事件
|
||||
},
|
||||
|
||||
/**
|
||||
* 视频列表
|
||||
*/
|
||||
initVideoList(arrPageId=[300,302]) {
|
||||
let CctvBannerBottomPiaoList = Cctvs.getDataByWhere(105, 209, arrPageId);
|
||||
//列表页-猜你喜欢
|
||||
if (CctvBannerBottomPiaoList.length > 0) {
|
||||
//列表页-1
|
||||
$(".j-cctv-list-page .j-cctv-list-ul").children().eq(0).remove()
|
||||
$(".j-cctv-list-page .j-cctv-list-ul").children().eq(0).before(this.CreatListCctv(CctvBannerBottomPiaoList[0]))
|
||||
}
|
||||
if (CctvBannerBottomPiaoList.length > 1) {
|
||||
//列表页-2
|
||||
$(".j-cctv-list-page .j-cctv-list-ul").children().eq(5).remove()
|
||||
$(".j-cctv-list-page .j-cctv-list-ul").children().eq(5).before(this.CreatListCctv(CctvBannerBottomPiaoList[1]))
|
||||
}
|
||||
if (CctvBannerBottomPiaoList.length > 2) {
|
||||
//列表页-2
|
||||
$(".j-cctv-list-page .j-cctv-list-ul").children().eq(8).remove()
|
||||
$(".j-cctv-list-page .j-cctv-list-ul").children().eq(8).before(this.CreatListCctv(CctvBannerBottomPiaoList[2]))
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 底飘初始化
|
||||
* --随机生成
|
||||
*/
|
||||
initBannerBottomPiao() {
|
||||
return
|
||||
let CctvBannerBottomPiaoList = Cctvs.getDataByWhere(101, 217, [300, 303]);
|
||||
let CctvBannerBottomPiaoListDom = '';
|
||||
let intRandNum = Math.floor(Math.random() * CctvBannerBottomPiaoList.length) //生成随机开屏广告
|
||||
let intFindActioveIndex = CctvBannerBottomPiaoList.findIndex((item, index) => index == intRandNum)
|
||||
if (intFindActioveIndex != -1) {
|
||||
CctvBannerBottomPiaoListDom = this.CreateCctvBottomDomList(CctvBannerBottomPiaoList[intFindActioveIndex], intFindActioveIndex, '底瓢');
|
||||
}
|
||||
if (CctvBannerBottomPiaoList.length > 0) {
|
||||
$(".foot-dp-fix").html(CctvBannerBottomPiaoListDom);
|
||||
} else {
|
||||
$(".foot-dp-fix").addClass('yc')
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 跑量页面-底飘初始化
|
||||
* --随机生成
|
||||
*/
|
||||
initPlBannerBottomPiao() {
|
||||
let CctvBannerBottomPiaoPlList = Cctvs.getDataByWhere(101, 217, [305]);
|
||||
let CctvBannerBottomPiaoPlListDom = '';
|
||||
let intRandNum = Math.floor(Math.random() * CctvBannerBottomPiaoPlList.length) //生成随机开屏广告
|
||||
let intFindActioveIndex = CctvBannerBottomPiaoPlList.findIndex((item, index) => index == intRandNum)
|
||||
if (intFindActioveIndex != -1) {
|
||||
CctvBannerBottomPiaoPlListDom = this.CreateCctvBottomDomPlList(CctvBannerBottomPiaoPlListDom[intFindActioveIndex], intFindActioveIndex, '底瓢');
|
||||
}
|
||||
if (CctvBannerBottomPiaoPlList.length > 0) {
|
||||
$(".foot-fix").html(CctvBannerBottomPiaoPlListDom);
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
*
|
||||
* 创建底瓢 -- 随机生成
|
||||
**/
|
||||
CreateCctvBottomDomList(data, index, page) {
|
||||
if (data) {
|
||||
return `
|
||||
<div class="app-content">
|
||||
<a class="j-cctv-click-dp" data-href="${data.href}" data-id="${data.id}" data-onsite-or-offsite="${data.onsite_or_offsite}"
|
||||
rel="nofollow">
|
||||
<img class="logo-img" src="${data.cover}" alt="${data.title}">
|
||||
<span class="dp-cctv-title" >${data.title}</span>
|
||||
<span class="dp-lj-into" >立即进入 </span>
|
||||
</a>
|
||||
</div>
|
||||
`
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
*
|
||||
* 创建底瓢 -- 随机生成 -- 跑量页
|
||||
**/
|
||||
CreateCctvBottomDomPlList(data, index, page) {
|
||||
if (data) {
|
||||
return `
|
||||
<div class="app-content">
|
||||
<a class="j-cctv-click" data-href="${data.href}" data-id="${data.id}" data-onsite-or-offsite="${data.onsite_or_offsite}" rel="nofollow">
|
||||
<img class="logo-img" class="logo-img" src="${data.cover}" alt="${data.title}">
|
||||
<span class="dp-cctv-title" >${data.title}</span>
|
||||
</a>
|
||||
<i class="close-img icon iconfont icon-shanchu1" id="close-di-but"></i>
|
||||
</div>
|
||||
`
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
*
|
||||
* 视频列表dom
|
||||
*
|
||||
***/
|
||||
CreatListCctv(list,arrConfigs=[]) {
|
||||
|
||||
var cctvListStr = "";
|
||||
if (list) {
|
||||
cctvListStr += `
|
||||
<li class="video_li swiper-slide">
|
||||
<a class="j-cctv-click" data-href="${list.href}" data-id="${list.id}" data-onsite-or-offsite="${list.onsite_or_offsite}" rel="nofollow">
|
||||
<div class="cover_dv">
|
||||
<img class="lazyLoad videoCover jqlazyload"
|
||||
alt="${list.title}"
|
||||
src="${arrConfigs['STATIC_SOURCE_DOMAIN']}/siteConfig/img/video.webp" data-wh=0.69
|
||||
data-original="${list.cover}"/>
|
||||
</div>
|
||||
<h3>${list.title}</h3>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
`;
|
||||
return cctvListStr;
|
||||
}
|
||||
},
|
||||
|
||||
}
|
||||
|
||||
export default CommonCctv;
|
||||
|
||||
|
||||
|
||||
|
||||
257
code/public/template/shikong/huiyuan/js/cctv/index.js
Normal file
257
code/public/template/shikong/huiyuan/js/cctv/index.js
Normal file
@@ -0,0 +1,257 @@
|
||||
import { parseInt } from 'lodash';
|
||||
import CctvsJs from '../class/cctv';
|
||||
import ConfigsJs from '../class/config';
|
||||
import { downloadImage,outPutLog,layerPopup } from '../public/commonFun.js';
|
||||
const Configs = new ConfigsJs();
|
||||
|
||||
// 首页弹窗
|
||||
const IndexCctv = {
|
||||
|
||||
intPopUpsIndex: 0,
|
||||
|
||||
init() {
|
||||
const Cctvs = new CctvsJs();
|
||||
let CctvTipIndex = Cctvs.getDataByWhere(106, 211, [301]);
|
||||
console.log(CctvTipIndex)
|
||||
let CctvTipIndexDom = `
|
||||
<!--首页弹窗遮挡层-->
|
||||
<div class="index-center-tc-zdc j-close-occlusion-layer"></div>
|
||||
`
|
||||
//首页弹窗广告数量
|
||||
if (document.querySelector(".index-center-tc-num") ) {
|
||||
document.querySelector(".index-center-tc-num").innerText = (CctvTipIndex.length-1)
|
||||
}
|
||||
|
||||
/**
|
||||
* 首页弹窗
|
||||
*
|
||||
*/
|
||||
CctvTipIndex.forEach((item, index) => {
|
||||
if (item) {
|
||||
if (item.title == '域名弹窗' && index == 0) {
|
||||
CctvTipIndexDom += this.CreateCctvTipIndexPupopDomainFun(item, index)
|
||||
}else{
|
||||
CctvTipIndexDom += this.CreateCctvTipIndexFun(item, index);
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
//首页弹窗广告
|
||||
if (!this.isFirstLoadHomeDomanFun() && CctvTipIndex.length>0 ) {
|
||||
$("body.home-web").append(CctvTipIndexDom)
|
||||
|
||||
}
|
||||
|
||||
this.addEvent()
|
||||
|
||||
},
|
||||
|
||||
/**
|
||||
* 绑定点击事件-初始化
|
||||
*/
|
||||
addEvent(){
|
||||
// 保存相册
|
||||
$(".j-genimg").on('click', function () {
|
||||
if (!window.HTMLCanvasElement) {
|
||||
layerPopup("请截图保存!", 3)
|
||||
return;
|
||||
}
|
||||
const layerIndexTc = layerPopup("拼命保存中。。");
|
||||
|
||||
html2canvas(document.querySelector(".index-center-tc"), {
|
||||
useCORS: true, // 启用跨域配置
|
||||
logging: true, // 启用日志记录以进行调试
|
||||
backgroundColor: null // 保持透明背景(如果需要)
|
||||
}).then(canvas => {
|
||||
var clipImgBase64 = canvas.toDataURL();
|
||||
// 生成图片
|
||||
var clipImg = new Image();
|
||||
clipImg.src = clipImgBase64;
|
||||
downloadImage(clipImgBase64);
|
||||
layer.close(layerIndexTc);
|
||||
}).catch(err => {
|
||||
console.error("html2canvas 出错:", err);
|
||||
layer.close(layerIndexTc);
|
||||
layerPopup("请手动截图保存!", 3)
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
// 关闭弹窗
|
||||
$(".j-close-index-pop-ups").on('click', (event) => {
|
||||
let intPopUpsIndex = $(event.currentTarget).attr('data-index')
|
||||
this.closeIndexTcfun(intPopUpsIndex)
|
||||
})
|
||||
|
||||
// 关闭遮挡层
|
||||
$(".j-close-occlusion-layer").on('click', () => {
|
||||
console.log(this.intPopUpsIndex)
|
||||
this.closeIndexTcfun(this.intPopUpsIndex)
|
||||
})
|
||||
},
|
||||
|
||||
/**
|
||||
*
|
||||
* 创建首页弹窗广告
|
||||
* h5
|
||||
**/
|
||||
CreateCctvTipIndexPupopDomainFun(data, index) {
|
||||
if (typeof data == 'object') {
|
||||
if (data.title == '域名弹窗' && index == 0) {
|
||||
return `
|
||||
<div class="index-center-tc index-center-tc-index${index} df-index-center-tc df-index-center-tc" >
|
||||
<div style="width:300px">
|
||||
<i class="index-center-tc-close icon iconfont icon-shanchu1 j-close-index-pop-ups" data-index="${index}" ></i>
|
||||
<a>
|
||||
<img class="index-center-tc-bjimg jqlazyload" src="${data.cover}" data-original="${data.cover}" />
|
||||
</a>
|
||||
|
||||
<div class="index-center-tc-op-domain df-top-domain j-share" data-sharedom=".index-center-tc-op-domain-text" >
|
||||
<p class="index-center-tc-op-domain-text">${Configs.get('STANDBY_URL')}</p>
|
||||
</div>
|
||||
<!--
|
||||
<div class="index-center-tc-yj-domain tc-domain j-share" data-sharedom=".index-center-tc-yj-domain-text" >
|
||||
<p class="index-center-tc-yj-domain-text">${Configs.get('VIP_DOMAIN_1')}</p>
|
||||
</div>
|
||||
-->
|
||||
<div class="index-center-tc-vip1-domain tc-domain j-share" data-sharedom=".index-center-tc-vip1-domain-text" >
|
||||
<p class="index-center-tc-vip1-domain-text">${Configs.get('VIP_DOMAIN_1')}</p>
|
||||
</div>
|
||||
|
||||
<div class="index-center-tc-vip2-domain tc-domain j-share" data-sharedom=".index-center-tc-vip2-domain-text" >
|
||||
<p class="index-center-tc-vip2-domain-text">${Configs.get('VIP_DOMAIN_2')}</p>
|
||||
</div>
|
||||
|
||||
<div class="index-center-tc-vip3-domain tc-domain j-share" data-sharedom=".index-center-tc-vip3-domain-text" >
|
||||
<p class="index-center-tc-vip3-domain-text">${Configs.get('VIP_DOMAIN_3')}</p>
|
||||
</div>
|
||||
|
||||
<a class="index-center-tc-fs1-domain tc-domain" href="${Configs.get('TG_URL', null)}" target="_blank">
|
||||
<p class="index-center-tc-fs1-domain-text" >${Configs.get('TG_URL', null)}</p>
|
||||
</a>
|
||||
|
||||
<a class="index-center-tc-fs2-ios tc-domain" href="https://f5d3.xyz" target="_blank">
|
||||
<p ><!--点击查看解决苹果手机无法加入和查看群内容--></p>
|
||||
</a>
|
||||
|
||||
<div class="index-center-tc-new-mail tc-domain j-share" data-sharedom=".index-center-tc-new-mail-text">
|
||||
<p class="index-center-tc-new-mail-text">${Configs.get('NEW_EMAIL')}</p>
|
||||
</div>
|
||||
|
||||
<div class="index-center-tc-btn">
|
||||
<div class="index-center-tc-btn-left j-genimg" ></div>
|
||||
<div class="index-center-tc-btn-right j-share" data-sharedom=".yjfz-nr-dv" ></div>
|
||||
</div>
|
||||
<div class="yjfz-nr-dv">
|
||||
官方永久域名:<br>
|
||||
${Configs.get('VIP_DOMAIN_1')}<br>
|
||||
你的VIP专属域名:<br>
|
||||
${Configs.get('VIP_DOMAIN_1')}<br>
|
||||
${Configs.get('VIP_DOMAIN_2')}<br>
|
||||
${Configs.get('VIP_DOMAIN_3')}<br>
|
||||
官方万人粉丝群:<br>
|
||||
${Configs.get('TG_URL')}<br>
|
||||
官方自动回复最新邮箱地址:<br>
|
||||
${Configs.get('NEW_EMAIL')}<br>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
`
|
||||
}
|
||||
|
||||
}
|
||||
},
|
||||
/**
|
||||
*
|
||||
* 创建首页弹窗广告
|
||||
* h5
|
||||
**/
|
||||
CreateCctvTipIndexFun(data, index) {
|
||||
if (typeof data == 'object') {
|
||||
//index++
|
||||
//data.href = framt_cctv_url(data.href,secretUrl)
|
||||
let strStyle = `style="display: none;"`
|
||||
if(index == 0){
|
||||
strStyle = `style="display: block;"`
|
||||
}
|
||||
return `
|
||||
<div class="index-center-tc index-center-tc-index${index}" ${strStyle}>
|
||||
<div style="width:300px">
|
||||
<i class="index-center-tc-close icon iconfont icon-shanchu1 j-close-index-pop-ups" data-index="${index}"></i>
|
||||
<a rel="nofollow" class="j-cctv-click" data-href="${data.href}" data-id="${data.id}" data-onsite-or-offsite="${data.onsite_or_offsite}" >
|
||||
<img class="index-center-tc-bjimg jqlazyload" src="${data.cover}" data-original="${data.cover}" alt="" />
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
`
|
||||
|
||||
}
|
||||
},
|
||||
|
||||
/*
|
||||
* 检测是否n分钟内是否访问过访问首页
|
||||
* intMinute 分钟
|
||||
*/
|
||||
isFirstLoadHomeDomanFun(intMinute = Configs.get('HOMEPAGE_LOAD_POPUPS_NUM')) {
|
||||
let currentDomain = document.domain
|
||||
let isFirstLoadHome = localStorage.getItem("isFirstLoadHome");
|
||||
let isFirstLoadHomeTime = localStorage.getItem("isFirstLoadHomeTime") ? localStorage.getItem("isFirstLoadHomeTime") : 0;
|
||||
isFirstLoadHomeTime = Number(isFirstLoadHomeTime)
|
||||
let timestamp = new Date().getTime();
|
||||
let timeLeft = timestamp - isFirstLoadHomeTime
|
||||
|
||||
outPutLog(currentDomain)
|
||||
outPutLog(isFirstLoadHome)
|
||||
outPutLog(isFirstLoadHomeTime)
|
||||
outPutLog(timestamp)
|
||||
outPutLog(timeLeft + '===' + intMinute * 60 * 1000)
|
||||
|
||||
if (isFirstLoadHome == currentDomain && timeLeft <= intMinute * 60 * 1000) {
|
||||
outPutLog('非首次访问')
|
||||
return true
|
||||
} else {
|
||||
outPutLog('首次访问')
|
||||
localStorage.setItem("isFirstLoadHome", currentDomain);
|
||||
localStorage.setItem("isFirstLoadHomeTime", timestamp);
|
||||
return false
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
//点击 关闭按钮
|
||||
closeIndexTcfun(intIndex) {
|
||||
let intPopusTotal = document.querySelector(".index-center-tc-num").innerText //一共几个弹窗
|
||||
intIndex = parseInt(intIndex)
|
||||
intPopusTotal = parseInt(intPopusTotal)
|
||||
console.log(intPopusTotal)
|
||||
console.log(intIndex)
|
||||
if (intIndex >= intPopusTotal) {
|
||||
//最后一个弹窗才关闭遮挡层
|
||||
let DomOcclusionLayer = document.querySelector(".index-center-tc-zdc")
|
||||
DomOcclusionLayer.setAttribute("style", "display:none!important");
|
||||
|
||||
//关闭最后一个弹窗
|
||||
let strClassName = ".index-center-tc-index" + intIndex
|
||||
let DomPupous = document.querySelector(strClassName)
|
||||
DomPupous.setAttribute("style", "display:none!important");
|
||||
} else {
|
||||
//关当前弹窗
|
||||
let strCurrentClassName = ".index-center-tc-index" + intIndex
|
||||
let DomCurrentPupous = document.querySelector(strCurrentClassName)
|
||||
DomCurrentPupous.setAttribute("style", "display:none!important");
|
||||
|
||||
//展示下一个弹窗
|
||||
let strNextClassName = ".index-center-tc-index" + (intIndex += 1)
|
||||
let DomNextPupous = document.querySelector(strNextClassName)
|
||||
DomNextPupous.setAttribute("style", "display:block");
|
||||
}
|
||||
this.intPopUpsIndex = intIndex++
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
export default IndexCctv;
|
||||
|
||||
|
||||
|
||||
47
code/public/template/shikong/huiyuan/js/cctv/info.js
Normal file
47
code/public/template/shikong/huiyuan/js/cctv/info.js
Normal file
@@ -0,0 +1,47 @@
|
||||
import CctvsJs from '../class/cctv';
|
||||
const Cctvs = new CctvsJs();
|
||||
import {
|
||||
getRandomElements
|
||||
} from '../public/commonFun.js';
|
||||
// cctv
|
||||
const InfoCctv = {
|
||||
|
||||
strPalaceGridHtml: '',
|
||||
|
||||
init(strLoadImg) {
|
||||
if($(".BodyClass365dh")){
|
||||
this.genCctvHtml(strLoadImg)
|
||||
$(".j-cctv-info-palace-grid").html(this.strPalaceGridHtml);
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
* 随机宫格宫格 5个
|
||||
* @returns {string}
|
||||
*/
|
||||
genCctvHtml(strLoadImg, arrPageId = [300, 304]) {
|
||||
let arrRandCctvPalaceGrid = Cctvs.getDataByWhere(102, 214, arrPageId);
|
||||
if (arrRandCctvPalaceGrid.length > 0) {
|
||||
arrRandCctvPalaceGrid = getRandomElements(arrRandCctvPalaceGrid,5)
|
||||
arrRandCctvPalaceGrid.forEach(item => {
|
||||
|
||||
this.strPalaceGridHtml +=
|
||||
`
|
||||
<div class="list-item ${item.equipment_class} j-cctv-click"
|
||||
data-href="${item.href}" data-id="${item.id}"
|
||||
data-onsite-or-offsite="${item.onsite_or_offsite}">
|
||||
<p class="app-logo">
|
||||
<img class=" jqlazyload jqlazyload" style="width: 100%;height:100%;"
|
||||
src="${strLoadImg}"
|
||||
data-original="${item.cover}">
|
||||
</p>
|
||||
<p class="app-name">${item.title}</p>
|
||||
</div>
|
||||
`
|
||||
|
||||
});
|
||||
}
|
||||
return this.strBannerHtml;
|
||||
},
|
||||
}
|
||||
export default InfoCctv;
|
||||
36
code/public/template/shikong/huiyuan/js/cctv/trans.js
Normal file
36
code/public/template/shikong/huiyuan/js/cctv/trans.js
Normal file
@@ -0,0 +1,36 @@
|
||||
import CctvsJs from '../class/cctv';
|
||||
const Cctvs = new CctvsJs();
|
||||
|
||||
// cctv
|
||||
const TransCctv = {
|
||||
|
||||
strBannerHtml : '' ,
|
||||
|
||||
init(arrConfigs){
|
||||
this.genCctvHtml(arrConfigs)
|
||||
$(".j-head-banner-A2").html(this.strBannerHtml);
|
||||
},
|
||||
|
||||
/**
|
||||
* 横幅
|
||||
* @returns {string}
|
||||
*/
|
||||
genCctvHtml(arrConfigs,arrPageId=[300,304]){
|
||||
let CctvCenterBanner = Cctvs.getDataByWhere(101, 210, arrPageId);
|
||||
if(CctvCenterBanner.length>0){
|
||||
CctvCenterBanner.forEach(item => {
|
||||
this.strBannerHtml +=
|
||||
`
|
||||
<a class="swiper-slide ${ item.equipment_class } j-cctv-click"
|
||||
data-href="${ item.href }" data-id="${ item.id }" data-onsite-or-offsite="${ item.onsite_or_offsite }"
|
||||
rel="nofollow">
|
||||
<img class="lazyLoad videoCover jqlazyload relate-img" src="${arrConfigs['LAZY_LOADING_OF_BANNER_IMAGES']}" data-wh=0.1 data-original="${ item.cover}" />
|
||||
</a>
|
||||
`
|
||||
|
||||
});
|
||||
}
|
||||
return this.strBannerHtml ;
|
||||
},
|
||||
}
|
||||
export default TransCctv;
|
||||
Reference in New Issue
Block a user