//=== viewid:qqol_style_04_1616752224036 ===//
$('#qqol_style_04_1616752224036 .item_box.backup').click(function(){
$('html , body').animate({scrollTop: 0},'slow');
});
//=== viewid:qqol_style_04_1616752224036 ===//
//购物车
if(typeof showcart !== 'function'){
function showcart(){
var langid = 0;
if (langid==0 && BodyIsFt) langid = 1;
if(window.screen.width<767 || ($('body').width() > 0 && $('body').width() < 767)){
location.href = "//s143js.nicebox.cn/exusers/u_cart.php?idweb=35785&act=show&lang="+langid+"&ismobile=1";
}else{
document.getElementById("boxName").innerHTML="查看购物车";
if(document.getElementById("boxClose")) document.getElementById("boxClose").innerHTML="×";
document.getElementById("showiframe").src="//s143js.nicebox.cn/exusers/u_cart.php?idweb=35785&act=show&lang="+langid+"&v=9";
box.Show({width:'1000px', height:'600px'});
}
}
}
//判断是否是手机,用于处理QQ电脑端及手机端链接不一致问题
var mobile_flag = isMobile();
if(mobile_flag){
$('#qqol_style_04_1616752224036 .qq_pc').hide();
$('#qqol_style_04_1616752224036 .qq_mobile').show();
}
function isMobile() {
var userAgentInfo = navigator.userAgent;
var mobileAgents = [ "Android", "iPhone", "SymbianOS", "Windows Phone", "iPad","iPod"];
var mobile_flag = false;
//根据userAgent判断是否是手机
for (var v = 0; v < mobileAgents.length; v++) {
if (userAgentInfo.indexOf(mobileAgents[v]) > 0) {
mobile_flag = true;
break;
}
}
var screen_width = window.screen.width;
var screen_height = window.screen.height;
//根据屏幕分辨率判断是否是手机
if(screen_width < 500 && screen_height < 800){
mobile_flag = true;
}
return mobile_flag;
}
//=== viewid:qqol_style_04_1616752224036 ===//
// 对输入内容中的尖括号、引号等进行转义
function html_encode(str) {
var s = "";
if (str.length == 0) return "";
s = str.replace(/&/g, "&");
s = s.replace(//g, ">");
s = s.replace(/ /g, " ");
s = s.replace(/\'/g, "'");
s = s.replace(/\"/g, """);
s = s.replace(/\n/g, "
");
return s;
}
function html_decode(str) {
var s = "";
if (str.length == 0) return "";
s = str.replace(/&/g, "&");
s = s.replace(//g, ">");
s = s.replace(/ /g, " ");
s = s.replace(/'/g, "\'");
s = s.replace(/"/g, "\"");
s = s.replace(/
/g, "\n");
return s;
}
//=== viewid:dh_style_28_1676170751137 ===//
/*pc,手机显示隐藏*/
function is_mobile(){
return window.screen.width<767 || ($('body').width() > 0 && $('body').width() < 767);
}
var is_mobile_boolean = is_mobile();
$(function(){
/*pc,手机显示隐藏*/
$("#dh_style_28_1676170751137 li").each(function(){
if($(this).find("ul") && $(this).find("ul").length != 0){
$(this).children("a").removeAttr('href');
if(is_mobile_boolean){
$(this).children("a").attr('onclick','navSwtich(this)');
}
}
});
})
//=== viewid:dh_style_28_1676170751137 ===//
function navSwtich(obj) {
$(obj).siblings(".menuUlCopy").slideToggle(200);
$(obj).toggleClass('ontoggle');
$(obj).parent().siblings().find(".menuUlCopy").slideUp(200);
$(obj).parent().siblings().find(".fa-angle-down").removeClass('ontoggle');
}
function subLeft_dh_style_28_1676170751137(){
$("#dh_style_28_1676170751137 .menuUl>li").each(function(){
$(this).find(".menuUl03").css("left",'100%');
})
}
$(window).resize(function() {
subLeft_dh_style_28_1676170751137();
})
$(function(){
$("#dh_style_28_1676170751137 .fa-navicon").click(function(){
$("#dh_style_28_1676170751137").addClass('clearTransform');
$("#dh_style_28_1676170751137 .menuUlCopy").each(function(){
$(this).siblings(".fa").show();
})
})
subLeft_dh_style_28_1676170751137();
$("#dh_style_28_1676170751137 .subBox").css("top",$("#dh_style_28_1676170751137 .menuUl_box").height());
if($("#dh_style_28_1676170751137 .menuUl").hasClass("noHover")){
var tabNum = 0;
$("#dh_style_28_1676170751137 .menuUl>li").find(".Onsub").each(function(){
tabNum += 1;
$(this).parent().attr("tabNum",tabNum)
})
$("#dh_style_28_1676170751137 .menuUl>li .Onsub").mouseover(function(){
$("#dh_style_28_1676170751137 .subBox").show();
var index = $(this).parent().attr("tabNum");
$("#dh_style_28_1676170751137 .subBox .subItems").eq(index-1).fadeIn(100).siblings().hide();
$("#dh_style_28_1676170751137 .subBox .subMenuImgArea .subMenuImgCon").eq(0).fadeIn(100).siblings().hide();
})
$("#dh_style_28_1676170751137 .subBox").mouseleave(function(){
$(this).hide();
});
$("#dh_style_28_1676170751137 .menuUl>li .Nosub").mouseover(function(){
$("#dh_style_28_1676170751137 .subBox").hide();
})
//风格41 42
}
})
var color = $('#dh_style_28_1676170751137 .menuStyle_28 .menuUl02 .subMenu02').css('background-color');
$('#dh_style_28_1676170751137 .menuStyle_28').append(``);
$('#dh_style_28_1676170751137 .menuStyle_28 .menuUl02 .subMenu02').mouseover(function(){
let that = $(this);
setTimeout(function(){
var hoverColor = that.css('background-color');
$('#dh_style_28_1676170751137 .menuStyle_28').append(``);
},100);
});
//=== viewid:lang_style_13_1704784910934 ===//
$(document).ready(function(){
});
//=== viewid:lang_style_13_1704784910934 ===//
$('#lang_style_13_1704784910934 .lang_main').mousemove(function(){
$('#lang_style_13_1704784910934 .lang_content').show();
}).mouseout(function(){
$('#lang_style_13_1704784910934 .lang_content').hide();
});
//=== viewid:banner_style_01_1669878387805 ===//
$(document).ready(function () {
autoBannerHeight('banner_style_01_1669878387805', 1, 1, 1);
});
function changeBannerHeight(tabId){
let obj = $('#'+tabId+' .niceTabShow .bannerStyle_1');
let viewId = obj.attr('viewId');
let autoPc = obj.attr('autoPc');
let autoPad = obj.attr('autoPad');
let autoMobile = obj.attr('autoMobile');
autoBannerHeight(viewId, autoPc, autoPad, autoMobile);
}
function autoBannerHeight(viewid, pc, pad, mobile){
if (!viewid) return;
$(window).resize(function(){
if (!autoBannerHeightOk(pc, pad, mobile)) return;
let bannerHeight = $('#'+viewid+' .img-item:eq(0) .hide_img').height();
if (bannerHeight == 0) return;
$('#'+viewid).height(bannerHeight);
});
if (!autoBannerHeightOk(pc, pad, mobile)) return;
let bannerHeight = $('#'+viewid+' .img-item:eq(0) .hide_img').height();
if (bannerHeight == 0) return;
$('#'+viewid).height(bannerHeight);
}
function autoBannerHeightOk(pc, pad, mobile){
if ($(window).width() >= 1200 && !pc) return false;
if ($(window).width() >= 641 && $(window).width() < 1200 && !pad) return false;
if ($(window).width() <= 640 && !mobile) return false;
return true;
}
//=== viewid:banner_style_01_1669878387805 ===//
$(document).ready(function(){
arrowShow();
$(window).resize(function(){
arrowShow();
});
// 箭头显示
function arrowShow(){
if(window.screen.width<767 || ($('body').width() > 0 && $('body').width() < 767) || navigator.userAgent.indexOf('Mac OS X') != -1){
$("#banner_style_01_1669878387805 .bannerStyle_1 .awesome-font").show().siblings().hide();
}else{
$("#banner_style_01_1669878387805 .bannerStyle_1 .awesome-font").hide().siblings().show();
}
}
});
//=== viewid:banner_style_01_1669878387805 ===//
/*
* Banner 轮播图类
*/
var intervaltimer;
function Banner(config) {
this._default = {
'list':[],
'length':0,
'current':0,
'timer':undefined, // 计时器
'view':undefined, // 视图
'flick':undefined, // 圆点选择器
'duration':3, // 切换时间间隔
'animation':0.5 // 动画时间
};
config = $.extend(true, this._default, config);
this.config = config;
this.init(config);
}
Banner.prototype.init = function(config) {
this.animateStyle = 'normal'; // 动画效果 ( 根据动画效果, 不同的方法有不同的实现 )
this.direction = 'right'; // 当前滚动方向
this.view = this.config.view;
this.config.length = this.config.list.length;
this.config.flick = this.view ? this.view.find(".bannerStyle_1 .flicking_con > a") : undefined;
};
// 计算下一个要显示的图片的索引
// by: 如果没有传入参数, 则使用配置中的数据this.config.current, 否则使用传入的参数
Banner.prototype.nextIndex = function(by) {
by === undefined && (by = this.config.current);
var next = this.direction == 'right' ? by + 1 : by - 1;
next >= this.config.length && (next = 0);
next < 0 && (next = this.config.length - 1);
return next;
};
//图片链接
$url_html = new Array();
$i = 0;
$url_len = 1;
$url_html[0] = "";
$('#banner_style_01_1669878387805 a.img_url').attr('href',$url_html[$i]);
// 跳到指定图片
Banner.prototype.animateIndex = function(index) {
this.endAnimate();
if(index >= 0 && index < this.config.length && this.config.current != index) {
if(this.config.current < index) {
this.direction = 'right';
this.config.current = index - 1;
} else {
this.direction = 'left';
this.config.current = index + 1;
}
this.showIndex(this.config.current);
this.startAnimate();
}
};
// 向右动画
Banner.prototype.startAnimateRight = function() {
this.direction = 'right';
this.startAnimate();
};
// 向左动画
Banner.prototype.startAnimateLeft = function() {
this.direction = 'left';
this.startAnimate();
};
// 结束动画
Banner.prototype.endAnimate = function() {
clearTimeout(this.config.timer);
};
// 结束动画
Banner.prototype.hoverEndAnimate = function() {
var that = this;
intervaltimer = setInterval(function(){
clearTimeout(that.config.timer);
},100);
};
Banner.prototype.startAnimate = function() {
switch(this.animateStyle) {
case 'normal':
// 默认效果
this.endAnimate();
if(this.config.length > 1) {
var prev = this.config.current, next = this.nextIndex(),
end = this.direction == 'right' ? {prev:"-100%", current:"100%"} : {prev:"100%", current:"-100%"}; // 前一个图片和当前图片的最后停留位置
this.config.flick.eq(next).addClass("on").siblings().removeClass("on");
// 执行动画
var banner = this;
this.imgs.eq(prev).stop().animate({"left":end.prev}, this.config.animation, function(){
banner.config.timer = setTimeout(function(){
banner.startAnimate();
},banner.config.duration);
});
this.imgs.eq(next).css({"left":end.current}).stop().animate({"left":"0%"}, this.config.animation);
this.config.current = next;
}
break;
case 'rotate-3d':
// 3D旋转效果
this.endAnimate();
this.updateBgImg();
if(this.config.length > 1) {
var prev = this.config.current, next = this.nextIndex();
this.config.flick.eq(next).addClass("on").siblings().removeClass("on");
this.config.current = next;
this.parts.css("transform", "rotateX(" + ((this.direction == 'right' ? ++this.rotate : --this.rotate) * 90) + "deg)");
var banner = this;
this.config.timer = setTimeout(function(){
banner.startAnimate();
},banner.config.duration);
}
$('#banner_style_01_1669878387805 a.img_url').attr('href',$url_html[this.config.current]);
break;
}
};
// 指定显示的图片
Banner.prototype.showIndex = function(index) {
switch(this.animateStyle) {
case 'normal':
// 默认效果
this.imgs.eq(index).css("left","0%").siblings(".img-item").css("left","100%");
this.config.flick.eq(index).addClass("on").siblings().removeClass("on");
break;
case 'rotate-3d':
// 3D旋转效果
this.updateFaceBottonTopImg(index);
this.config.flick.eq(index).addClass("on").siblings().removeClass("on");
break;
}
};
/*
* ********************************************
* 3D旋转效果 特有函数 begin
*/
// 每次旋转前都需要更新背部的图片
Banner.prototype.updateBgImg = function() {
// 计算背部要显示的图片
var bg_image_index = this.nextIndex(this.nextIndex());
// index: 计算背景图片当前显示在哪个img中( 总共有4个图片, 分别位于正面/底部/背部/顶部, 索引分别为0, 1, 2, 3 )
var c, index = (c = (this.rotate + 2) % 4) >= 0 ? c : c + 4;
var banner = this;
// console.log('第',index,'个面-使用更新为第',bg_image_index,'张图');
this.parts && this.parts.each(function () {
$(this).find('.img:eq('+index+')').css({'background-image': 'url("'+banner.config.list[bg_image_index]+'")'});
});
};
// 更新正面/顶部/底部的图片
// index: 要显示哪张图片
// 备注: 因为总共有四个面的图片需要更新, 初始化时, 正面/顶部/底部的图片只需更新一次即可 (背部的图片在每次旋转前都需要更新)
Banner.prototype.updateFaceBottonTopImg = function(index) {
// face, bottom, top: 计算正面/顶部/底部图片当前显示在哪个img中( 总共有4个图片, 分别位于正面/底部/背部/顶部, 索引分别为0, 1, 2, 3 )
var c, face = (c = this.rotate % 4) >= 0 ? c : c + 4, bottom, top;
bottom = face + 1; bottom >= this.config.length && (bottom = 0);
top = face - 1; top < 0 && (top = this.config.length - 1);
var banner = this;
this.parts && this.parts.each(function () {
// console.log('第',face,'个面-使用更新为第',index,'张图');
$(this).find('.img:eq('+face+')').css({'background-image': 'url("'+banner.config.list[index]+'")'});
// console.log('第',bottom,'个面-使用更新为第',index < banner.config.length - 1 ? index + 1 : 0,'张图');
$(this).find('.img:eq('+bottom+')').css({'background-image': 'url("'+banner.config.list[index < banner.config.length - 1 ? index + 1 : 0]+'")'});
// console.log('第',top,'个面-使用更新为第',index > 0 ? index - 1 : banner.config.length - 1,'张图');
$(this).find('.img:eq('+top+')').css({'background-image': 'url("'+banner.config.list[index > 0 ? index - 1 : banner.config.length - 1]+'")'});
});
};
// 初始化旋转部分: 设置3d旋转的四个面的图片, index表示默认显示哪张图片
Banner.prototype.initImgPart = function(index) {
var banner = this;
this.parts && this.parts.each(function () {
$(this).find('.img').each(function (i) {
var j = 0;
switch (i) {
case 0: j = index; break; // 正面
case 1: j = index + 1; break; // 底部
case 2: break; // 背部
case 3: j = index - 1; break; // 顶部
}
j >= banner.config.length && (j = 0);
j < 0 && (j = banner.config.length - 1);
$(this).css({'background-image': 'url("'+banner.config.list[j]+'")', 'background-repeat':'no-repeat', 'background-color':'#fff'});
});
});
};
// 更新旋转部分: 之所以使用定时器, 是因为无法实时获取模块宽度
Banner.prototype.updateImgPart = function() {
this.parts && this.parts.each(function(index) {
$(this).css({
"left":$(this).width() * index + "px"
});
$(this).find(".img").css({
"background-position": -$(this).width() * index + "px"
});
});
var banner = this;
setTimeout(function () {
banner.updateImgPart();
}, 800);
};
/*
* 3D旋转效果 特有函数 end
* ********************************************
*/
// 图片数据
var list_banner_style_01_1669878387805 = [];
list_banner_style_01_1669878387805.push('https://cdn.yun.sooce.cn/6/35785/jpg/1676194116071adfe341a97d30833.jpg?version=0');
var banner_banner_style_01_1669878387805; // 轮播图对象
$(function(){
// 创建轮播图
$arrHref = new Array();
banner_banner_style_01_1669878387805 = new Banner({
'list':list_banner_style_01_1669878387805,
'view':$('#banner_style_01_1669878387805'),
'duration':parseFloat('3') * 1000,
'animation':parseFloat('0.5') * 1000
});
banner_banner_style_01_1669878387805.animateStyle = 'normal';
banner_banner_style_01_1669878387805.imgs = banner_banner_style_01_1669878387805.view.find(".bannerStyle_1 .main_image .img-list").children(".img-item");
banner_banner_style_01_1669878387805.view.find('a').each(function (i) {
$(this).click(function () {
if(!$(this).attr('href')) {
return false;
}
});
});
banner_banner_style_01_1669878387805.view.find('a.picSet').each(function(i){
$arrHref[i] = $(this).attr('href');
});
// 显示指定索引的图片
banner_banner_style_01_1669878387805.showIndex(banner_banner_style_01_1669878387805.config.current);
// 监听 点击圆点
banner_banner_style_01_1669878387805.config.flick.click(function(){
banner_banner_style_01_1669878387805.animateIndex($(this).index());
$('#banner_style_01_1669878387805 a.img_url').attr('href',$url_html[$(this).index()]);
$i = $(this).index();
return false;
});
// 监听 鼠标悬浮时
banner_banner_style_01_1669878387805.view.hover(
function(){
banner_banner_style_01_1669878387805.hoverEndAnimate();
banner_banner_style_01_1669878387805.view.find(".bannerStyle_1 .btn_prev, .bannerStyle_1 .btn_next").fadeIn();
},
function(){
clearInterval(intervaltimer);
banner_banner_style_01_1669878387805.config.timer = setTimeout(function(){
banner_banner_style_01_1669878387805.startAnimateRight();
},banner_banner_style_01_1669878387805.config.duration);
banner_banner_style_01_1669878387805.view.find(".bannerStyle_1 .btn_prev, .bannerStyle_1 .btn_next").fadeOut()
}
);
// 监听 点击左右按钮
banner_banner_style_01_1669878387805.view.find(".btn_prev").click(function() {
banner_banner_style_01_1669878387805.startAnimateLeft();
});
banner_banner_style_01_1669878387805.view.find(".btn_next").click(function() {
banner_banner_style_01_1669878387805.startAnimateRight();
});
// 监听 触摸事件
var touchVal = null;
document.addEventListener("touchstart", function(e){
if($(e.target).is(banner_banner_style_01_1669878387805.view) || $(e.target).closest("#"+banner_banner_style_01_1669878387805.view.attr("id")).length > 0) {
touchVal = {};
touchVal.downX = e.touches[0].clientX; // 记录触摸起始位置
}
}, false);
document.addEventListener("touchmove", function(e){
if(touchVal && touchVal.downX) {
touchVal.moveX = e.touches[0].clientX - touchVal.downX; // 计算触摸中的偏移位置
}
}, false);
document.addEventListener("touchend", function(e){
if(touchVal && touchVal.moveX){
if(touchVal.moveX > 30){
banner_banner_style_01_1669878387805.startAnimateLeft(); // 触摸生效
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnvalue = false;
}
}else if(touchVal.moveX < -30){
banner_banner_style_01_1669878387805.startAnimateRight(); // 触摸生效
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnvalue = false;
}
}
}
touchVal = null;
}, false);
// 运行
banner_banner_style_01_1669878387805.config.timer = setTimeout(function(){
banner_banner_style_01_1669878387805.startAnimateRight();
}, banner_banner_style_01_1669878387805.config.duration);
});
//=== viewid:banner_style_01_1676192029605 ===//
$(document).ready(function () {
autoBannerHeight('banner_style_01_1676192029605', 1, 1, 1);
});
function changeBannerHeight(tabId){
let obj = $('#'+tabId+' .niceTabShow .bannerStyle_1');
let viewId = obj.attr('viewId');
let autoPc = obj.attr('autoPc');
let autoPad = obj.attr('autoPad');
let autoMobile = obj.attr('autoMobile');
autoBannerHeight(viewId, autoPc, autoPad, autoMobile);
}
function autoBannerHeight(viewid, pc, pad, mobile){
if (!viewid) return;
$(window).resize(function(){
if (!autoBannerHeightOk(pc, pad, mobile)) return;
let bannerHeight = $('#'+viewid+' .img-item:eq(0) .hide_img').height();
if (bannerHeight == 0) return;
$('#'+viewid).height(bannerHeight);
});
if (!autoBannerHeightOk(pc, pad, mobile)) return;
let bannerHeight = $('#'+viewid+' .img-item:eq(0) .hide_img').height();
if (bannerHeight == 0) return;
$('#'+viewid).height(bannerHeight);
}
function autoBannerHeightOk(pc, pad, mobile){
if ($(window).width() >= 1200 && !pc) return false;
if ($(window).width() >= 641 && $(window).width() < 1200 && !pad) return false;
if ($(window).width() <= 640 && !mobile) return false;
return true;
}
//=== viewid:banner_style_01_1676192029605 ===//
$(document).ready(function(){
arrowShow();
$(window).resize(function(){
arrowShow();
});
// 箭头显示
function arrowShow(){
if(window.screen.width<767 || ($('body').width() > 0 && $('body').width() < 767) || navigator.userAgent.indexOf('Mac OS X') != -1){
$("#banner_style_01_1676192029605 .bannerStyle_1 .awesome-font").show().siblings().hide();
}else{
$("#banner_style_01_1676192029605 .bannerStyle_1 .awesome-font").hide().siblings().show();
}
}
});
//=== viewid:banner_style_01_1676192029605 ===//
/*
* Banner 轮播图类
*/
var intervaltimer;
function Banner(config) {
this._default = {
'list':[],
'length':0,
'current':0,
'timer':undefined, // 计时器
'view':undefined, // 视图
'flick':undefined, // 圆点选择器
'duration':3, // 切换时间间隔
'animation':0.5 // 动画时间
};
config = $.extend(true, this._default, config);
this.config = config;
this.init(config);
}
Banner.prototype.init = function(config) {
this.animateStyle = 'normal'; // 动画效果 ( 根据动画效果, 不同的方法有不同的实现 )
this.direction = 'right'; // 当前滚动方向
this.view = this.config.view;
this.config.length = this.config.list.length;
this.config.flick = this.view ? this.view.find(".bannerStyle_1 .flicking_con > a") : undefined;
};
// 计算下一个要显示的图片的索引
// by: 如果没有传入参数, 则使用配置中的数据this.config.current, 否则使用传入的参数
Banner.prototype.nextIndex = function(by) {
by === undefined && (by = this.config.current);
var next = this.direction == 'right' ? by + 1 : by - 1;
next >= this.config.length && (next = 0);
next < 0 && (next = this.config.length - 1);
return next;
};
//图片链接
$url_html = new Array();
$i = 0;
$url_len = 1;
$url_html[0] = "";
$('#banner_style_01_1676192029605 a.img_url').attr('href',$url_html[$i]);
// 跳到指定图片
Banner.prototype.animateIndex = function(index) {
this.endAnimate();
if(index >= 0 && index < this.config.length && this.config.current != index) {
if(this.config.current < index) {
this.direction = 'right';
this.config.current = index - 1;
} else {
this.direction = 'left';
this.config.current = index + 1;
}
this.showIndex(this.config.current);
this.startAnimate();
}
};
// 向右动画
Banner.prototype.startAnimateRight = function() {
this.direction = 'right';
this.startAnimate();
};
// 向左动画
Banner.prototype.startAnimateLeft = function() {
this.direction = 'left';
this.startAnimate();
};
// 结束动画
Banner.prototype.endAnimate = function() {
clearTimeout(this.config.timer);
};
// 结束动画
Banner.prototype.hoverEndAnimate = function() {
var that = this;
intervaltimer = setInterval(function(){
clearTimeout(that.config.timer);
},100);
};
Banner.prototype.startAnimate = function() {
switch(this.animateStyle) {
case 'normal':
// 默认效果
this.endAnimate();
if(this.config.length > 1) {
var prev = this.config.current, next = this.nextIndex(),
end = this.direction == 'right' ? {prev:"-100%", current:"100%"} : {prev:"100%", current:"-100%"}; // 前一个图片和当前图片的最后停留位置
this.config.flick.eq(next).addClass("on").siblings().removeClass("on");
// 执行动画
var banner = this;
this.imgs.eq(prev).stop().animate({"left":end.prev}, this.config.animation, function(){
banner.config.timer = setTimeout(function(){
banner.startAnimate();
},banner.config.duration);
});
this.imgs.eq(next).css({"left":end.current}).stop().animate({"left":"0%"}, this.config.animation);
this.config.current = next;
}
break;
case 'rotate-3d':
// 3D旋转效果
this.endAnimate();
this.updateBgImg();
if(this.config.length > 1) {
var prev = this.config.current, next = this.nextIndex();
this.config.flick.eq(next).addClass("on").siblings().removeClass("on");
this.config.current = next;
this.parts.css("transform", "rotateX(" + ((this.direction == 'right' ? ++this.rotate : --this.rotate) * 90) + "deg)");
var banner = this;
this.config.timer = setTimeout(function(){
banner.startAnimate();
},banner.config.duration);
}
$('#banner_style_01_1676192029605 a.img_url').attr('href',$url_html[this.config.current]);
break;
}
};
// 指定显示的图片
Banner.prototype.showIndex = function(index) {
switch(this.animateStyle) {
case 'normal':
// 默认效果
this.imgs.eq(index).css("left","0%").siblings(".img-item").css("left","100%");
this.config.flick.eq(index).addClass("on").siblings().removeClass("on");
break;
case 'rotate-3d':
// 3D旋转效果
this.updateFaceBottonTopImg(index);
this.config.flick.eq(index).addClass("on").siblings().removeClass("on");
break;
}
};
/*
* ********************************************
* 3D旋转效果 特有函数 begin
*/
// 每次旋转前都需要更新背部的图片
Banner.prototype.updateBgImg = function() {
// 计算背部要显示的图片
var bg_image_index = this.nextIndex(this.nextIndex());
// index: 计算背景图片当前显示在哪个img中( 总共有4个图片, 分别位于正面/底部/背部/顶部, 索引分别为0, 1, 2, 3 )
var c, index = (c = (this.rotate + 2) % 4) >= 0 ? c : c + 4;
var banner = this;
// console.log('第',index,'个面-使用更新为第',bg_image_index,'张图');
this.parts && this.parts.each(function () {
$(this).find('.img:eq('+index+')').css({'background-image': 'url("'+banner.config.list[bg_image_index]+'")'});
});
};
// 更新正面/顶部/底部的图片
// index: 要显示哪张图片
// 备注: 因为总共有四个面的图片需要更新, 初始化时, 正面/顶部/底部的图片只需更新一次即可 (背部的图片在每次旋转前都需要更新)
Banner.prototype.updateFaceBottonTopImg = function(index) {
// face, bottom, top: 计算正面/顶部/底部图片当前显示在哪个img中( 总共有4个图片, 分别位于正面/底部/背部/顶部, 索引分别为0, 1, 2, 3 )
var c, face = (c = this.rotate % 4) >= 0 ? c : c + 4, bottom, top;
bottom = face + 1; bottom >= this.config.length && (bottom = 0);
top = face - 1; top < 0 && (top = this.config.length - 1);
var banner = this;
this.parts && this.parts.each(function () {
// console.log('第',face,'个面-使用更新为第',index,'张图');
$(this).find('.img:eq('+face+')').css({'background-image': 'url("'+banner.config.list[index]+'")'});
// console.log('第',bottom,'个面-使用更新为第',index < banner.config.length - 1 ? index + 1 : 0,'张图');
$(this).find('.img:eq('+bottom+')').css({'background-image': 'url("'+banner.config.list[index < banner.config.length - 1 ? index + 1 : 0]+'")'});
// console.log('第',top,'个面-使用更新为第',index > 0 ? index - 1 : banner.config.length - 1,'张图');
$(this).find('.img:eq('+top+')').css({'background-image': 'url("'+banner.config.list[index > 0 ? index - 1 : banner.config.length - 1]+'")'});
});
};
// 初始化旋转部分: 设置3d旋转的四个面的图片, index表示默认显示哪张图片
Banner.prototype.initImgPart = function(index) {
var banner = this;
this.parts && this.parts.each(function () {
$(this).find('.img').each(function (i) {
var j = 0;
switch (i) {
case 0: j = index; break; // 正面
case 1: j = index + 1; break; // 底部
case 2: break; // 背部
case 3: j = index - 1; break; // 顶部
}
j >= banner.config.length && (j = 0);
j < 0 && (j = banner.config.length - 1);
$(this).css({'background-image': 'url("'+banner.config.list[j]+'")', 'background-repeat':'no-repeat', 'background-color':'#fff'});
});
});
};
// 更新旋转部分: 之所以使用定时器, 是因为无法实时获取模块宽度
Banner.prototype.updateImgPart = function() {
this.parts && this.parts.each(function(index) {
$(this).css({
"left":$(this).width() * index + "px"
});
$(this).find(".img").css({
"background-position": -$(this).width() * index + "px"
});
});
var banner = this;
setTimeout(function () {
banner.updateImgPart();
}, 800);
};
/*
* 3D旋转效果 特有函数 end
* ********************************************
*/
// 图片数据
var list_banner_style_01_1676192029605 = [];
list_banner_style_01_1676192029605.push('https://cdn.yun.sooce.cn/6/35785/jpg/16761925182056c119e45374f51b1.jpg?version=0');
var banner_banner_style_01_1676192029605; // 轮播图对象
$(function(){
// 创建轮播图
$arrHref = new Array();
banner_banner_style_01_1676192029605 = new Banner({
'list':list_banner_style_01_1676192029605,
'view':$('#banner_style_01_1676192029605'),
'duration':parseFloat('3') * 1000,
'animation':parseFloat('0.5') * 1000
});
banner_banner_style_01_1676192029605.animateStyle = 'normal';
banner_banner_style_01_1676192029605.imgs = banner_banner_style_01_1676192029605.view.find(".bannerStyle_1 .main_image .img-list").children(".img-item");
banner_banner_style_01_1676192029605.view.find('a').each(function (i) {
$(this).click(function () {
if(!$(this).attr('href')) {
return false;
}
});
});
banner_banner_style_01_1676192029605.view.find('a.picSet').each(function(i){
$arrHref[i] = $(this).attr('href');
});
// 显示指定索引的图片
banner_banner_style_01_1676192029605.showIndex(banner_banner_style_01_1676192029605.config.current);
// 监听 点击圆点
banner_banner_style_01_1676192029605.config.flick.click(function(){
banner_banner_style_01_1676192029605.animateIndex($(this).index());
$('#banner_style_01_1676192029605 a.img_url').attr('href',$url_html[$(this).index()]);
$i = $(this).index();
return false;
});
// 监听 鼠标悬浮时
banner_banner_style_01_1676192029605.view.hover(
function(){
banner_banner_style_01_1676192029605.hoverEndAnimate();
banner_banner_style_01_1676192029605.view.find(".bannerStyle_1 .btn_prev, .bannerStyle_1 .btn_next").fadeIn();
},
function(){
clearInterval(intervaltimer);
banner_banner_style_01_1676192029605.config.timer = setTimeout(function(){
banner_banner_style_01_1676192029605.startAnimateRight();
},banner_banner_style_01_1676192029605.config.duration);
banner_banner_style_01_1676192029605.view.find(".bannerStyle_1 .btn_prev, .bannerStyle_1 .btn_next").fadeOut()
}
);
// 监听 点击左右按钮
banner_banner_style_01_1676192029605.view.find(".btn_prev").click(function() {
banner_banner_style_01_1676192029605.startAnimateLeft();
});
banner_banner_style_01_1676192029605.view.find(".btn_next").click(function() {
banner_banner_style_01_1676192029605.startAnimateRight();
});
// 监听 触摸事件
var touchVal = null;
document.addEventListener("touchstart", function(e){
if($(e.target).is(banner_banner_style_01_1676192029605.view) || $(e.target).closest("#"+banner_banner_style_01_1676192029605.view.attr("id")).length > 0) {
touchVal = {};
touchVal.downX = e.touches[0].clientX; // 记录触摸起始位置
}
}, false);
document.addEventListener("touchmove", function(e){
if(touchVal && touchVal.downX) {
touchVal.moveX = e.touches[0].clientX - touchVal.downX; // 计算触摸中的偏移位置
}
}, false);
document.addEventListener("touchend", function(e){
if(touchVal && touchVal.moveX){
if(touchVal.moveX > 30){
banner_banner_style_01_1676192029605.startAnimateLeft(); // 触摸生效
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnvalue = false;
}
}else if(touchVal.moveX < -30){
banner_banner_style_01_1676192029605.startAnimateRight(); // 触摸生效
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnvalue = false;
}
}
}
touchVal = null;
}, false);
// 运行
banner_banner_style_01_1676192029605.config.timer = setTimeout(function(){
banner_banner_style_01_1676192029605.startAnimateRight();
}, banner_banner_style_01_1676192029605.config.duration);
});
//=== viewid:banner_style_01_1676193136403 ===//
$(document).ready(function () {
autoBannerHeight('banner_style_01_1676193136403', 1, 1, 1);
});
function changeBannerHeight(tabId){
let obj = $('#'+tabId+' .niceTabShow .bannerStyle_1');
let viewId = obj.attr('viewId');
let autoPc = obj.attr('autoPc');
let autoPad = obj.attr('autoPad');
let autoMobile = obj.attr('autoMobile');
autoBannerHeight(viewId, autoPc, autoPad, autoMobile);
}
function autoBannerHeight(viewid, pc, pad, mobile){
if (!viewid) return;
$(window).resize(function(){
if (!autoBannerHeightOk(pc, pad, mobile)) return;
let bannerHeight = $('#'+viewid+' .img-item:eq(0) .hide_img').height();
if (bannerHeight == 0) return;
$('#'+viewid).height(bannerHeight);
});
if (!autoBannerHeightOk(pc, pad, mobile)) return;
let bannerHeight = $('#'+viewid+' .img-item:eq(0) .hide_img').height();
if (bannerHeight == 0) return;
$('#'+viewid).height(bannerHeight);
}
function autoBannerHeightOk(pc, pad, mobile){
if ($(window).width() >= 1200 && !pc) return false;
if ($(window).width() >= 641 && $(window).width() < 1200 && !pad) return false;
if ($(window).width() <= 640 && !mobile) return false;
return true;
}
//=== viewid:banner_style_01_1676193136403 ===//
$(document).ready(function(){
arrowShow();
$(window).resize(function(){
arrowShow();
});
// 箭头显示
function arrowShow(){
if(window.screen.width<767 || ($('body').width() > 0 && $('body').width() < 767) || navigator.userAgent.indexOf('Mac OS X') != -1){
$("#banner_style_01_1676193136403 .bannerStyle_1 .awesome-font").show().siblings().hide();
}else{
$("#banner_style_01_1676193136403 .bannerStyle_1 .awesome-font").hide().siblings().show();
}
}
});
//=== viewid:banner_style_01_1676193136403 ===//
/*
* Banner 轮播图类
*/
var intervaltimer;
function Banner(config) {
this._default = {
'list':[],
'length':0,
'current':0,
'timer':undefined, // 计时器
'view':undefined, // 视图
'flick':undefined, // 圆点选择器
'duration':3, // 切换时间间隔
'animation':0.5 // 动画时间
};
config = $.extend(true, this._default, config);
this.config = config;
this.init(config);
}
Banner.prototype.init = function(config) {
this.animateStyle = 'normal'; // 动画效果 ( 根据动画效果, 不同的方法有不同的实现 )
this.direction = 'right'; // 当前滚动方向
this.view = this.config.view;
this.config.length = this.config.list.length;
this.config.flick = this.view ? this.view.find(".bannerStyle_1 .flicking_con > a") : undefined;
};
// 计算下一个要显示的图片的索引
// by: 如果没有传入参数, 则使用配置中的数据this.config.current, 否则使用传入的参数
Banner.prototype.nextIndex = function(by) {
by === undefined && (by = this.config.current);
var next = this.direction == 'right' ? by + 1 : by - 1;
next >= this.config.length && (next = 0);
next < 0 && (next = this.config.length - 1);
return next;
};
//图片链接
$url_html = new Array();
$i = 0;
$url_len = 1;
$url_html[0] = "";
$('#banner_style_01_1676193136403 a.img_url').attr('href',$url_html[$i]);
// 跳到指定图片
Banner.prototype.animateIndex = function(index) {
this.endAnimate();
if(index >= 0 && index < this.config.length && this.config.current != index) {
if(this.config.current < index) {
this.direction = 'right';
this.config.current = index - 1;
} else {
this.direction = 'left';
this.config.current = index + 1;
}
this.showIndex(this.config.current);
this.startAnimate();
}
};
// 向右动画
Banner.prototype.startAnimateRight = function() {
this.direction = 'right';
this.startAnimate();
};
// 向左动画
Banner.prototype.startAnimateLeft = function() {
this.direction = 'left';
this.startAnimate();
};
// 结束动画
Banner.prototype.endAnimate = function() {
clearTimeout(this.config.timer);
};
// 结束动画
Banner.prototype.hoverEndAnimate = function() {
var that = this;
intervaltimer = setInterval(function(){
clearTimeout(that.config.timer);
},100);
};
Banner.prototype.startAnimate = function() {
switch(this.animateStyle) {
case 'normal':
// 默认效果
this.endAnimate();
if(this.config.length > 1) {
var prev = this.config.current, next = this.nextIndex(),
end = this.direction == 'right' ? {prev:"-100%", current:"100%"} : {prev:"100%", current:"-100%"}; // 前一个图片和当前图片的最后停留位置
this.config.flick.eq(next).addClass("on").siblings().removeClass("on");
// 执行动画
var banner = this;
this.imgs.eq(prev).stop().animate({"left":end.prev}, this.config.animation, function(){
banner.config.timer = setTimeout(function(){
banner.startAnimate();
},banner.config.duration);
});
this.imgs.eq(next).css({"left":end.current}).stop().animate({"left":"0%"}, this.config.animation);
this.config.current = next;
}
break;
case 'rotate-3d':
// 3D旋转效果
this.endAnimate();
this.updateBgImg();
if(this.config.length > 1) {
var prev = this.config.current, next = this.nextIndex();
this.config.flick.eq(next).addClass("on").siblings().removeClass("on");
this.config.current = next;
this.parts.css("transform", "rotateX(" + ((this.direction == 'right' ? ++this.rotate : --this.rotate) * 90) + "deg)");
var banner = this;
this.config.timer = setTimeout(function(){
banner.startAnimate();
},banner.config.duration);
}
$('#banner_style_01_1676193136403 a.img_url').attr('href',$url_html[this.config.current]);
break;
}
};
// 指定显示的图片
Banner.prototype.showIndex = function(index) {
switch(this.animateStyle) {
case 'normal':
// 默认效果
this.imgs.eq(index).css("left","0%").siblings(".img-item").css("left","100%");
this.config.flick.eq(index).addClass("on").siblings().removeClass("on");
break;
case 'rotate-3d':
// 3D旋转效果
this.updateFaceBottonTopImg(index);
this.config.flick.eq(index).addClass("on").siblings().removeClass("on");
break;
}
};
/*
* ********************************************
* 3D旋转效果 特有函数 begin
*/
// 每次旋转前都需要更新背部的图片
Banner.prototype.updateBgImg = function() {
// 计算背部要显示的图片
var bg_image_index = this.nextIndex(this.nextIndex());
// index: 计算背景图片当前显示在哪个img中( 总共有4个图片, 分别位于正面/底部/背部/顶部, 索引分别为0, 1, 2, 3 )
var c, index = (c = (this.rotate + 2) % 4) >= 0 ? c : c + 4;
var banner = this;
// console.log('第',index,'个面-使用更新为第',bg_image_index,'张图');
this.parts && this.parts.each(function () {
$(this).find('.img:eq('+index+')').css({'background-image': 'url("'+banner.config.list[bg_image_index]+'")'});
});
};
// 更新正面/顶部/底部的图片
// index: 要显示哪张图片
// 备注: 因为总共有四个面的图片需要更新, 初始化时, 正面/顶部/底部的图片只需更新一次即可 (背部的图片在每次旋转前都需要更新)
Banner.prototype.updateFaceBottonTopImg = function(index) {
// face, bottom, top: 计算正面/顶部/底部图片当前显示在哪个img中( 总共有4个图片, 分别位于正面/底部/背部/顶部, 索引分别为0, 1, 2, 3 )
var c, face = (c = this.rotate % 4) >= 0 ? c : c + 4, bottom, top;
bottom = face + 1; bottom >= this.config.length && (bottom = 0);
top = face - 1; top < 0 && (top = this.config.length - 1);
var banner = this;
this.parts && this.parts.each(function () {
// console.log('第',face,'个面-使用更新为第',index,'张图');
$(this).find('.img:eq('+face+')').css({'background-image': 'url("'+banner.config.list[index]+'")'});
// console.log('第',bottom,'个面-使用更新为第',index < banner.config.length - 1 ? index + 1 : 0,'张图');
$(this).find('.img:eq('+bottom+')').css({'background-image': 'url("'+banner.config.list[index < banner.config.length - 1 ? index + 1 : 0]+'")'});
// console.log('第',top,'个面-使用更新为第',index > 0 ? index - 1 : banner.config.length - 1,'张图');
$(this).find('.img:eq('+top+')').css({'background-image': 'url("'+banner.config.list[index > 0 ? index - 1 : banner.config.length - 1]+'")'});
});
};
// 初始化旋转部分: 设置3d旋转的四个面的图片, index表示默认显示哪张图片
Banner.prototype.initImgPart = function(index) {
var banner = this;
this.parts && this.parts.each(function () {
$(this).find('.img').each(function (i) {
var j = 0;
switch (i) {
case 0: j = index; break; // 正面
case 1: j = index + 1; break; // 底部
case 2: break; // 背部
case 3: j = index - 1; break; // 顶部
}
j >= banner.config.length && (j = 0);
j < 0 && (j = banner.config.length - 1);
$(this).css({'background-image': 'url("'+banner.config.list[j]+'")', 'background-repeat':'no-repeat', 'background-color':'#fff'});
});
});
};
// 更新旋转部分: 之所以使用定时器, 是因为无法实时获取模块宽度
Banner.prototype.updateImgPart = function() {
this.parts && this.parts.each(function(index) {
$(this).css({
"left":$(this).width() * index + "px"
});
$(this).find(".img").css({
"background-position": -$(this).width() * index + "px"
});
});
var banner = this;
setTimeout(function () {
banner.updateImgPart();
}, 800);
};
/*
* 3D旋转效果 特有函数 end
* ********************************************
*/
// 图片数据
var list_banner_style_01_1676193136403 = [];
list_banner_style_01_1676193136403.push('https://cdn.yun.sooce.cn/6/35785/jpg/167619523361422efcf77fc657cd9.jpg?version=0');
var banner_banner_style_01_1676193136403; // 轮播图对象
$(function(){
// 创建轮播图
$arrHref = new Array();
banner_banner_style_01_1676193136403 = new Banner({
'list':list_banner_style_01_1676193136403,
'view':$('#banner_style_01_1676193136403'),
'duration':parseFloat('3') * 1000,
'animation':parseFloat('0.5') * 1000
});
banner_banner_style_01_1676193136403.animateStyle = 'normal';
banner_banner_style_01_1676193136403.imgs = banner_banner_style_01_1676193136403.view.find(".bannerStyle_1 .main_image .img-list").children(".img-item");
banner_banner_style_01_1676193136403.view.find('a').each(function (i) {
$(this).click(function () {
if(!$(this).attr('href')) {
return false;
}
});
});
banner_banner_style_01_1676193136403.view.find('a.picSet').each(function(i){
$arrHref[i] = $(this).attr('href');
});
// 显示指定索引的图片
banner_banner_style_01_1676193136403.showIndex(banner_banner_style_01_1676193136403.config.current);
// 监听 点击圆点
banner_banner_style_01_1676193136403.config.flick.click(function(){
banner_banner_style_01_1676193136403.animateIndex($(this).index());
$('#banner_style_01_1676193136403 a.img_url').attr('href',$url_html[$(this).index()]);
$i = $(this).index();
return false;
});
// 监听 鼠标悬浮时
banner_banner_style_01_1676193136403.view.hover(
function(){
banner_banner_style_01_1676193136403.hoverEndAnimate();
banner_banner_style_01_1676193136403.view.find(".bannerStyle_1 .btn_prev, .bannerStyle_1 .btn_next").fadeIn();
},
function(){
clearInterval(intervaltimer);
banner_banner_style_01_1676193136403.config.timer = setTimeout(function(){
banner_banner_style_01_1676193136403.startAnimateRight();
},banner_banner_style_01_1676193136403.config.duration);
banner_banner_style_01_1676193136403.view.find(".bannerStyle_1 .btn_prev, .bannerStyle_1 .btn_next").fadeOut()
}
);
// 监听 点击左右按钮
banner_banner_style_01_1676193136403.view.find(".btn_prev").click(function() {
banner_banner_style_01_1676193136403.startAnimateLeft();
});
banner_banner_style_01_1676193136403.view.find(".btn_next").click(function() {
banner_banner_style_01_1676193136403.startAnimateRight();
});
// 监听 触摸事件
var touchVal = null;
document.addEventListener("touchstart", function(e){
if($(e.target).is(banner_banner_style_01_1676193136403.view) || $(e.target).closest("#"+banner_banner_style_01_1676193136403.view.attr("id")).length > 0) {
touchVal = {};
touchVal.downX = e.touches[0].clientX; // 记录触摸起始位置
}
}, false);
document.addEventListener("touchmove", function(e){
if(touchVal && touchVal.downX) {
touchVal.moveX = e.touches[0].clientX - touchVal.downX; // 计算触摸中的偏移位置
}
}, false);
document.addEventListener("touchend", function(e){
if(touchVal && touchVal.moveX){
if(touchVal.moveX > 30){
banner_banner_style_01_1676193136403.startAnimateLeft(); // 触摸生效
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnvalue = false;
}
}else if(touchVal.moveX < -30){
banner_banner_style_01_1676193136403.startAnimateRight(); // 触摸生效
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnvalue = false;
}
}
}
touchVal = null;
}, false);
// 运行
banner_banner_style_01_1676193136403.config.timer = setTimeout(function(){
banner_banner_style_01_1676193136403.startAnimateRight();
}, banner_banner_style_01_1676193136403.config.duration);
});
//=== viewid:banner_style_01_1676193164111 ===//
$(document).ready(function () {
autoBannerHeight('banner_style_01_1676193164111', 1, 1, 1);
});
function changeBannerHeight(tabId){
let obj = $('#'+tabId+' .niceTabShow .bannerStyle_1');
let viewId = obj.attr('viewId');
let autoPc = obj.attr('autoPc');
let autoPad = obj.attr('autoPad');
let autoMobile = obj.attr('autoMobile');
autoBannerHeight(viewId, autoPc, autoPad, autoMobile);
}
function autoBannerHeight(viewid, pc, pad, mobile){
if (!viewid) return;
$(window).resize(function(){
if (!autoBannerHeightOk(pc, pad, mobile)) return;
let bannerHeight = $('#'+viewid+' .img-item:eq(0) .hide_img').height();
if (bannerHeight == 0) return;
$('#'+viewid).height(bannerHeight);
});
if (!autoBannerHeightOk(pc, pad, mobile)) return;
let bannerHeight = $('#'+viewid+' .img-item:eq(0) .hide_img').height();
if (bannerHeight == 0) return;
$('#'+viewid).height(bannerHeight);
}
function autoBannerHeightOk(pc, pad, mobile){
if ($(window).width() >= 1200 && !pc) return false;
if ($(window).width() >= 641 && $(window).width() < 1200 && !pad) return false;
if ($(window).width() <= 640 && !mobile) return false;
return true;
}
//=== viewid:banner_style_01_1676193164111 ===//
$(document).ready(function(){
arrowShow();
$(window).resize(function(){
arrowShow();
});
// 箭头显示
function arrowShow(){
if(window.screen.width<767 || ($('body').width() > 0 && $('body').width() < 767) || navigator.userAgent.indexOf('Mac OS X') != -1){
$("#banner_style_01_1676193164111 .bannerStyle_1 .awesome-font").show().siblings().hide();
}else{
$("#banner_style_01_1676193164111 .bannerStyle_1 .awesome-font").hide().siblings().show();
}
}
});
//=== viewid:banner_style_01_1676193164111 ===//
/*
* Banner 轮播图类
*/
var intervaltimer;
function Banner(config) {
this._default = {
'list':[],
'length':0,
'current':0,
'timer':undefined, // 计时器
'view':undefined, // 视图
'flick':undefined, // 圆点选择器
'duration':3, // 切换时间间隔
'animation':0.5 // 动画时间
};
config = $.extend(true, this._default, config);
this.config = config;
this.init(config);
}
Banner.prototype.init = function(config) {
this.animateStyle = 'normal'; // 动画效果 ( 根据动画效果, 不同的方法有不同的实现 )
this.direction = 'right'; // 当前滚动方向
this.view = this.config.view;
this.config.length = this.config.list.length;
this.config.flick = this.view ? this.view.find(".bannerStyle_1 .flicking_con > a") : undefined;
};
// 计算下一个要显示的图片的索引
// by: 如果没有传入参数, 则使用配置中的数据this.config.current, 否则使用传入的参数
Banner.prototype.nextIndex = function(by) {
by === undefined && (by = this.config.current);
var next = this.direction == 'right' ? by + 1 : by - 1;
next >= this.config.length && (next = 0);
next < 0 && (next = this.config.length - 1);
return next;
};
//图片链接
$url_html = new Array();
$i = 0;
$url_len = 1;
$url_html[0] = "";
$('#banner_style_01_1676193164111 a.img_url').attr('href',$url_html[$i]);
// 跳到指定图片
Banner.prototype.animateIndex = function(index) {
this.endAnimate();
if(index >= 0 && index < this.config.length && this.config.current != index) {
if(this.config.current < index) {
this.direction = 'right';
this.config.current = index - 1;
} else {
this.direction = 'left';
this.config.current = index + 1;
}
this.showIndex(this.config.current);
this.startAnimate();
}
};
// 向右动画
Banner.prototype.startAnimateRight = function() {
this.direction = 'right';
this.startAnimate();
};
// 向左动画
Banner.prototype.startAnimateLeft = function() {
this.direction = 'left';
this.startAnimate();
};
// 结束动画
Banner.prototype.endAnimate = function() {
clearTimeout(this.config.timer);
};
// 结束动画
Banner.prototype.hoverEndAnimate = function() {
var that = this;
intervaltimer = setInterval(function(){
clearTimeout(that.config.timer);
},100);
};
Banner.prototype.startAnimate = function() {
switch(this.animateStyle) {
case 'normal':
// 默认效果
this.endAnimate();
if(this.config.length > 1) {
var prev = this.config.current, next = this.nextIndex(),
end = this.direction == 'right' ? {prev:"-100%", current:"100%"} : {prev:"100%", current:"-100%"}; // 前一个图片和当前图片的最后停留位置
this.config.flick.eq(next).addClass("on").siblings().removeClass("on");
// 执行动画
var banner = this;
this.imgs.eq(prev).stop().animate({"left":end.prev}, this.config.animation, function(){
banner.config.timer = setTimeout(function(){
banner.startAnimate();
},banner.config.duration);
});
this.imgs.eq(next).css({"left":end.current}).stop().animate({"left":"0%"}, this.config.animation);
this.config.current = next;
}
break;
case 'rotate-3d':
// 3D旋转效果
this.endAnimate();
this.updateBgImg();
if(this.config.length > 1) {
var prev = this.config.current, next = this.nextIndex();
this.config.flick.eq(next).addClass("on").siblings().removeClass("on");
this.config.current = next;
this.parts.css("transform", "rotateX(" + ((this.direction == 'right' ? ++this.rotate : --this.rotate) * 90) + "deg)");
var banner = this;
this.config.timer = setTimeout(function(){
banner.startAnimate();
},banner.config.duration);
}
$('#banner_style_01_1676193164111 a.img_url').attr('href',$url_html[this.config.current]);
break;
}
};
// 指定显示的图片
Banner.prototype.showIndex = function(index) {
switch(this.animateStyle) {
case 'normal':
// 默认效果
this.imgs.eq(index).css("left","0%").siblings(".img-item").css("left","100%");
this.config.flick.eq(index).addClass("on").siblings().removeClass("on");
break;
case 'rotate-3d':
// 3D旋转效果
this.updateFaceBottonTopImg(index);
this.config.flick.eq(index).addClass("on").siblings().removeClass("on");
break;
}
};
/*
* ********************************************
* 3D旋转效果 特有函数 begin
*/
// 每次旋转前都需要更新背部的图片
Banner.prototype.updateBgImg = function() {
// 计算背部要显示的图片
var bg_image_index = this.nextIndex(this.nextIndex());
// index: 计算背景图片当前显示在哪个img中( 总共有4个图片, 分别位于正面/底部/背部/顶部, 索引分别为0, 1, 2, 3 )
var c, index = (c = (this.rotate + 2) % 4) >= 0 ? c : c + 4;
var banner = this;
// console.log('第',index,'个面-使用更新为第',bg_image_index,'张图');
this.parts && this.parts.each(function () {
$(this).find('.img:eq('+index+')').css({'background-image': 'url("'+banner.config.list[bg_image_index]+'")'});
});
};
// 更新正面/顶部/底部的图片
// index: 要显示哪张图片
// 备注: 因为总共有四个面的图片需要更新, 初始化时, 正面/顶部/底部的图片只需更新一次即可 (背部的图片在每次旋转前都需要更新)
Banner.prototype.updateFaceBottonTopImg = function(index) {
// face, bottom, top: 计算正面/顶部/底部图片当前显示在哪个img中( 总共有4个图片, 分别位于正面/底部/背部/顶部, 索引分别为0, 1, 2, 3 )
var c, face = (c = this.rotate % 4) >= 0 ? c : c + 4, bottom, top;
bottom = face + 1; bottom >= this.config.length && (bottom = 0);
top = face - 1; top < 0 && (top = this.config.length - 1);
var banner = this;
this.parts && this.parts.each(function () {
// console.log('第',face,'个面-使用更新为第',index,'张图');
$(this).find('.img:eq('+face+')').css({'background-image': 'url("'+banner.config.list[index]+'")'});
// console.log('第',bottom,'个面-使用更新为第',index < banner.config.length - 1 ? index + 1 : 0,'张图');
$(this).find('.img:eq('+bottom+')').css({'background-image': 'url("'+banner.config.list[index < banner.config.length - 1 ? index + 1 : 0]+'")'});
// console.log('第',top,'个面-使用更新为第',index > 0 ? index - 1 : banner.config.length - 1,'张图');
$(this).find('.img:eq('+top+')').css({'background-image': 'url("'+banner.config.list[index > 0 ? index - 1 : banner.config.length - 1]+'")'});
});
};
// 初始化旋转部分: 设置3d旋转的四个面的图片, index表示默认显示哪张图片
Banner.prototype.initImgPart = function(index) {
var banner = this;
this.parts && this.parts.each(function () {
$(this).find('.img').each(function (i) {
var j = 0;
switch (i) {
case 0: j = index; break; // 正面
case 1: j = index + 1; break; // 底部
case 2: break; // 背部
case 3: j = index - 1; break; // 顶部
}
j >= banner.config.length && (j = 0);
j < 0 && (j = banner.config.length - 1);
$(this).css({'background-image': 'url("'+banner.config.list[j]+'")', 'background-repeat':'no-repeat', 'background-color':'#fff'});
});
});
};
// 更新旋转部分: 之所以使用定时器, 是因为无法实时获取模块宽度
Banner.prototype.updateImgPart = function() {
this.parts && this.parts.each(function(index) {
$(this).css({
"left":$(this).width() * index + "px"
});
$(this).find(".img").css({
"background-position": -$(this).width() * index + "px"
});
});
var banner = this;
setTimeout(function () {
banner.updateImgPart();
}, 800);
};
/*
* 3D旋转效果 特有函数 end
* ********************************************
*/
// 图片数据
var list_banner_style_01_1676193164111 = [];
list_banner_style_01_1676193164111.push('https://cdn.yun.sooce.cn/6/35785/jpg/16761955904559a206531ea9edd45.jpg?version=0');
var banner_banner_style_01_1676193164111; // 轮播图对象
$(function(){
// 创建轮播图
$arrHref = new Array();
banner_banner_style_01_1676193164111 = new Banner({
'list':list_banner_style_01_1676193164111,
'view':$('#banner_style_01_1676193164111'),
'duration':parseFloat('3') * 1000,
'animation':parseFloat('0.5') * 1000
});
banner_banner_style_01_1676193164111.animateStyle = 'normal';
banner_banner_style_01_1676193164111.imgs = banner_banner_style_01_1676193164111.view.find(".bannerStyle_1 .main_image .img-list").children(".img-item");
banner_banner_style_01_1676193164111.view.find('a').each(function (i) {
$(this).click(function () {
if(!$(this).attr('href')) {
return false;
}
});
});
banner_banner_style_01_1676193164111.view.find('a.picSet').each(function(i){
$arrHref[i] = $(this).attr('href');
});
// 显示指定索引的图片
banner_banner_style_01_1676193164111.showIndex(banner_banner_style_01_1676193164111.config.current);
// 监听 点击圆点
banner_banner_style_01_1676193164111.config.flick.click(function(){
banner_banner_style_01_1676193164111.animateIndex($(this).index());
$('#banner_style_01_1676193164111 a.img_url').attr('href',$url_html[$(this).index()]);
$i = $(this).index();
return false;
});
// 监听 鼠标悬浮时
banner_banner_style_01_1676193164111.view.hover(
function(){
banner_banner_style_01_1676193164111.hoverEndAnimate();
banner_banner_style_01_1676193164111.view.find(".bannerStyle_1 .btn_prev, .bannerStyle_1 .btn_next").fadeIn();
},
function(){
clearInterval(intervaltimer);
banner_banner_style_01_1676193164111.config.timer = setTimeout(function(){
banner_banner_style_01_1676193164111.startAnimateRight();
},banner_banner_style_01_1676193164111.config.duration);
banner_banner_style_01_1676193164111.view.find(".bannerStyle_1 .btn_prev, .bannerStyle_1 .btn_next").fadeOut()
}
);
// 监听 点击左右按钮
banner_banner_style_01_1676193164111.view.find(".btn_prev").click(function() {
banner_banner_style_01_1676193164111.startAnimateLeft();
});
banner_banner_style_01_1676193164111.view.find(".btn_next").click(function() {
banner_banner_style_01_1676193164111.startAnimateRight();
});
// 监听 触摸事件
var touchVal = null;
document.addEventListener("touchstart", function(e){
if($(e.target).is(banner_banner_style_01_1676193164111.view) || $(e.target).closest("#"+banner_banner_style_01_1676193164111.view.attr("id")).length > 0) {
touchVal = {};
touchVal.downX = e.touches[0].clientX; // 记录触摸起始位置
}
}, false);
document.addEventListener("touchmove", function(e){
if(touchVal && touchVal.downX) {
touchVal.moveX = e.touches[0].clientX - touchVal.downX; // 计算触摸中的偏移位置
}
}, false);
document.addEventListener("touchend", function(e){
if(touchVal && touchVal.moveX){
if(touchVal.moveX > 30){
banner_banner_style_01_1676193164111.startAnimateLeft(); // 触摸生效
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnvalue = false;
}
}else if(touchVal.moveX < -30){
banner_banner_style_01_1676193164111.startAnimateRight(); // 触摸生效
if (e.preventDefault) {
e.preventDefault();
} else {
e.returnvalue = false;
}
}
}
touchVal = null;
}, false);
// 运行
banner_banner_style_01_1676193164111.config.timer = setTimeout(function(){
banner_banner_style_01_1676193164111.startAnimateRight();
}, banner_banner_style_01_1676193164111.config.duration);
});
//=== viewid:copyright_style_01_1616665328602 ===//
//=== viewid:footerCustom_footerDh_01_1676019213718 ===//
$(function(){
if($("#footerCustom_footerDh_01_1676019213718 .menuUl").hasClass("noHover")){
var tabNum = 0;
$("#footerCustom_footerDh_01_1676019213718 .menuUl>li").find(".Onsub").each(function(){
tabNum += 1;
$(this).parent().attr("tabNum",tabNum)
})
}
})
//=== viewid:footerCustom_footerDh_01_1676019213718 ===//
/*pc,手机显示隐藏*/
function is_mobile(){
return window.screen.width<767 || ($('body').width() > 0 && $('body').width() < 767);
}
function _checkWindwo(){
if(is_mobile()){
$("#footerCustom_footerDh_01_1676019213718 .showmobile").show();
$("#footerCustom_footerDh_01_1676019213718 .showpc").hide();
}else{
$("#footerCustom_footerDh_01_1676019213718 .showmobile").hide();
$("#footerCustom_footerDh_01_1676019213718 .showpc").show();
}
}
_checkWindwo();
$(window).resize(function() {
_checkWindwo();
})