ZhiYeJianKang_PeiXun/Song.Site/Templates/Web/Gov/Scripts/lrtk.js

290 lines
9.5 KiB
JavaScript
Raw Normal View History

2025-02-20 15:41:53 +08:00
/*
name : yanggang;
QQ:392017299;
E-mail:yanggang1@conew.com;
*/
var UA = window.navigator.userAgent,IsAndroid = (/Android|HTC/i.test(UA)),IsIPad = !IsAndroid && /iPad/i.test(UA),IsIPhone = !IsAndroid && /iPod|iPhone/i.test(UA),IsIOS = IsIPad || IsIPhone,clearAnimatea = null;
var testStyle=document.createElement('div').style,
camelCase=function(str){
return str.replace(/^-ms-/, "ms-").replace(/-([a-z]|[0-9])/ig, function(all, letter){
return (letter+"").toUpperCase();
});
},
cssVendor=(function(){
var ts=testStyle,
cases=['-o-','-webkit-','-moz-','-ms-',''],i=0;
do {
if(camelCase(cases[i]+'transform') in ts){
return cases[i];
}
} while(++i<cases.length);
return '';
})(),
transitionend=(function(){
return ({
'-o-':'otransitionend',
'-webkit-':'webkitTransitionEnd',
'-moz-':'transitionend',
'-ms-':'MSTransitionEnd transitionend',
'':'transitionend'
})[cssVendor];
})(),
isCSS = function(property){
var ts=testStyle,
name=camelCase(property),
_name=camelCase(cssVendor+property);
return (name in ts) && name || (_name in ts) && _name || '';
};
var liebaoBrowser = {
domAnimation: function(ele){
ele.detBtn.hover(function(){
$(this).addClass('btn-hover');
},function(){
$(this).removeClass('btn-hover');
});
ele.navhover.hover(function(){
$(this).find("i").addClass('nav-hover');
},function(){
$(this).find("i").removeClass('nav-hover');
});
ele.downBtn.hover(function(){
$(this).addClass('down-btn');
},function(){
$(this).removeClass('down-btn');
});
ele.watchLb.hover(function(){
ele.code.addClass('code-show').show();
},function(){
ele.code.removeClass('code-show').hide();
});
ele.fnLi.hover(function(){
var radiusEle = $(this).find('div');
$(this).addClass('span-img');
if(ele.aniMation){
radiusEle.addClass('zoom');
}else{
radiusEle.show();
}
},function(){
var radiusEle = $(this).find('div');
$(this).removeClass('span-img');
if(ele.aniMation){
radiusEle.removeClass('zoom');
}else{
radiusEle.hide();
}
});
},
banSlide: function(item,time,ele,speed){
clearTimeout(clearAnimatea);
var length = ele.slide.length- 1;
/*自动播放*/
function autoPlay() {
item++;
if (item == length+1) {
item = 0;
aniObj(item);
}else{
aniObj(item);
}
spanCur(item);
clearAnimatea = setTimeout(autoPlay, time);
}
clearAnimatea = setTimeout(autoPlay, time);
/*点击切换动画*/
function slidePrev(e){
e.preventDefault();
if(!ele.slide.is(':animated')){
if (item == 0) {
item = length;
aniObj(item);
} else {
item--;
aniObj(item);
}
spanCur(item);
}
};
function slideNext(e){
e.preventDefault();
if(!ele.slide.is(':animated')){
if (item == length) {
item = 0;
aniObj(item);
} else {
item++;
aniObj(item);
}
spanCur(item);
}
};
/* 点击切换动画 */
ele.slideCur.click(function() {
clearTimeout(clearAnimatea);
ele.slideCur.removeClass('cur');
$(this).addClass('cur');
item = $(this).index();
if (item <= length) {
aniObj(item);
}
});
/*执行动画方法*/
function aniObj(getNum){
ele.slide.hide().css({ opacity: 0.5,zIndex: 0});
ele.slide.eq(getNum).show().stop(true,true).animate({opacity:1,zIndex:8},speed);
if(ele.aniMation){
ele.slide.removeClass('banAnimate');
ele.slide.eq(getNum).addClass('banAnimate');
}
}
/*当前动画指示*/
function spanCur(eqNum) {
ele.slideCur.removeClass('cur');
ele.slideCur.eq(eqNum).addClass('cur');
}
/* 触发执行事件 */
ele.prev.click(slidePrev);
ele.next.click(slideNext);
/* 手机上执行touch事件 */
if(IsIOS || IsAndroid){
var touchMain = document.getElementById('touchMain');
var page = {
x:0,
y:0
}
var touched;
touchMain.addEventListener('touchstart',function(e){
clearTimeout(clearAnimatea);
page.x = e.changedTouches[0].pageX;
page.y = e.changedTouches[0].pageY;
});
touchMain.addEventListener('touchend',function(e){
var pageX = e.changedTouches[0].pageX-page.x;
var pageY = e.changedTouches[0].pageY-page.y;
if(Math.abs(pageX)>50){
if(pageX>0){
slidePrev(e);
}else{
slideNext(e);
}
}
clearAnimatea = setTimeout(autoPlay, time);
touched=null;
});
/* 防止阻止touchend事件 */
touchMain.addEventListener('touchmove',function(e){
if(null==touched){
var pageX = e.changedTouches[0].pageX-page.x;
var pageY = e.changedTouches[0].pageY-page.y;
touched=Math.abs(pageX-page.x)<Math.abs(pageY-page.y);
}
if(!touched)e.preventDefault();
});
}else{
/*滑过主体区域停止动画*/
ele.stopAnimte.hover(function() {
clearTimeout(clearAnimatea);
}, function() {
clearAnimatea = setTimeout(autoPlay, time);
});
}
/*初始化动画*/
ele.slide.eq(0).show().addClass('banAnimate');
},
maxImgInit: function(ele){
if(ele.windowMain.width()>760){
ele.maxImg.hover(function(){
if(ele.aniMation){
$(this).addClass('aniimgstyle');
}else{
$(this).addClass('imgstyle');
}
},function(){
if(ele.aniMation){
$(this).removeClass('aniimgstyle');
}else{
$(this).removeClass('imgstyle');
}
});
}else{
return false;
}
},
windowEvent: function(ele){
if(!IsIOS && !IsAndroid){
if(ele.windowMain.height() < 640){
ele.downlaodMain.removeClass('position');
ele.downlaodMain.addClass('padding');
}else{
ele.downlaodMain.removeClass('padding');
ele.downlaodMain.addClass('position');
}
}
},
flipObj: function(ele,time){
if(!IsIOS && !IsAndroid){
setTimeout(function(){
if(ele.aniMation){
ele.codeImg.show().addClass('flip');
ele.phoneImg.hide();
}else{
ele.codeImg.show();
ele.phoneImg.hide();
}
},time);
ele.phoneImg.click(function(){
ele.phoneImg.hide().removeClass('flip');
ele.codeImg.show().addClass('flip');
});
ele.codeImg.click(function(){
ele.codeImg.hide().removeClass('flip');
ele.phoneImg.show().addClass('flip');
});
}else{
$('.pc-download').css({position:'absolute',left:'0',zIndex:'11',top:'156px;'});
$('.phone-download').css({position:'absolute',left:'0',zIndex:'12',top:'-156px'});
}
},
staJS: function(){
$(document).on('click','a',function(e){
var statData = $(this).attr('stat');
try {
_hmt.push(['_trackEvent',statData, 'webLB', 'click', 'download',statData]);
} catch (e) {}
});
},
init: function(ele){
liebaoBrowser.banSlide(0,5000,ele,500);
liebaoBrowser.domAnimation(ele);
liebaoBrowser.windowEvent(ele);
liebaoBrowser.maxImgInit(ele);
ele.windowMain.on('resize',function(){
liebaoBrowser.windowEvent(ele);
liebaoBrowser.maxImgInit(ele);
});
liebaoBrowser.flipObj(ele,2000);
liebaoBrowser.staJS();
}
};
$(function(){
var domEle = {
navhover: $('.nav-main a'), detBtn: $('.details'),
maxImg: $('.news-img'), fnLi: $('.ft-list li'),
aniMation: isCSS('animation'), watchLb: $('#watch-lb'),
code: $('.watch-code'),
downBtn: $('.beta-info a'),
downlaodMain: $('.downlaod-main'),
windowMain: $(window),
bodyEle: $('body'),
stopAnimte: $('.slide,.prev,.next,.item'),
prev: $('.prev'),
next: $('.next'),
slide: $('.slide'),
slideCur: $('.item a'),
phoneImg: $('.phone-img'),
codeImg: $('.code-img')
};
domEle.downlaodMain.show();
liebaoBrowser.init(domEle);
});