1067 lines
36 KiB
JavaScript
Executable File
1067 lines
36 KiB
JavaScript
Executable File
$(function() {
|
|
$('.goodsImg').lazyload({ effect: "fadeIn",failurelimit : 10,skip_invisible : false,threshold: 100,placeholder:window.conf.IMGURL+'/'+window.conf.GOODS_LOGO});//商品默认图片
|
|
$('.shopsImg').lazyload({ effect: "fadeIn",failurelimit : 10,skip_invisible : false,threshold: 100,placeholder:window.conf.IMGURL+'/'+window.conf.SHOP_LOGO});//店铺默认头像
|
|
$('.usersImg').lazyload({ effect: "fadeIn",failurelimit : 10,skip_invisible : false,threshold: 100,placeholder:window.conf.IMGURL+'/'+window.conf.USER_LOGO});//会员默认头像
|
|
});
|
|
WST.initVisitor = function(){
|
|
WST.dropDownLayer(".j-dorpdown",".j-dorpdown-layer");
|
|
WST.dropDownLayer(".drop-info",".wst-tag");
|
|
WST.dropDownLayerCart(".wst-cart-box",".wst-cart-boxs");
|
|
WST.searchIpt();
|
|
WST.showCategoryNavs();
|
|
WST.Sidebar();
|
|
WST.getSysMessages('message,cart');
|
|
if(WST.conf.TIME_TASK=='1'){
|
|
setInterval(function(){
|
|
WST.getSysMessages('message,cart');
|
|
},10000);
|
|
}
|
|
}
|
|
WST.initUserCenter = function(){
|
|
WST.dropDownLayer(".j-dorpdown",".j-dorpdown-layer");
|
|
WST.dropDownLayer(".drop-info",".wst-tag");
|
|
WST.searchIpt();
|
|
WST.dropDownLayerCart(".wst-lite-cart",".wst-lite-carts");
|
|
WST.getSysMessages('message,cart,userorder');
|
|
if(WST.conf.TIME_TASK=='1'){
|
|
setInterval(function(){
|
|
WST.getSysMessages('message,cart,userorder');
|
|
},10000);
|
|
}
|
|
}
|
|
WST.initShopCenter = function(){
|
|
WST.dropDownLayer(".j-dorpdown",".j-dorpdown-layer");
|
|
WST.dropDownLayer(".drop-info",".wst-tag");
|
|
WST.searchIpt();
|
|
WST.getSysMessages('message,shoporder');
|
|
if(WST.conf.MESSAGE_BOX!=''){
|
|
var msg = WST.conf.MESSAGE_BOX.split('||');
|
|
for(var i=0;i<msg.length;i++){
|
|
WST.open({type: 1,
|
|
title: '系统提示',
|
|
shade: false,
|
|
area: ['340px', '215px'],
|
|
offset: 'rb',
|
|
time: 20000,
|
|
anim: 4,
|
|
content: "<div class='j-messsage-box'>"+msg[i]+"</div>",
|
|
})
|
|
}
|
|
}
|
|
if(WST.conf.TIME_TASK=='1'){
|
|
setInterval(function(){
|
|
WST.getSysMessages('message,shoporder');
|
|
},10000);
|
|
}
|
|
}
|
|
WST.searchIpt = function(){
|
|
$('.j-search-box').hover(function(){
|
|
$(".j-type-list").show();
|
|
$(this).find('i').removeClass('arrow').addClass('over');
|
|
$(this).css({"border-left":"2px solid #e23c3d"});
|
|
},function(){
|
|
$(".j-type-list").hide();
|
|
$(this).css({"border-left":"2px solid #e23c3d"});
|
|
$(this).find('i').removeClass('over').addClass('arrow');
|
|
});
|
|
|
|
$('j-type-list').hover(function(){
|
|
$(".j-type-list").show();
|
|
$(this).find('i').removeClass('arrow').addClass('over');
|
|
$(this).css({"border-left":"2px solid #e23c3d"});
|
|
});
|
|
|
|
$(".j-type-list div").click(function(){
|
|
$("#search-type").val($(this).attr("data"));
|
|
$(".j-search-type span").html($(this).html());
|
|
if($(this).attr("data")==1){
|
|
$(this).attr("data",0);
|
|
$(this).html('商品');
|
|
$('#search-ipt').attr('placeholder',$('#adsShopWordsSearch').val());
|
|
}else{
|
|
$(this).attr("data",1);
|
|
$(this).html('店铺');
|
|
$('#search-ipt').attr('placeholder',$('#adsGoodsWordsSearch').val());
|
|
}
|
|
$(".j-type-list").hide();
|
|
$(".j-search-type").find('i').removeClass('over').addClass('arrow');
|
|
});
|
|
}
|
|
WST.search = function(){
|
|
if($("#search-type").val()==1){
|
|
WST.shopSearch($.trim($('#search-ipt').val()));
|
|
}else{
|
|
WST.goodsSearch($.trim($('#search-ipt').val()));
|
|
}
|
|
}
|
|
WST.shopSearch = function(v){
|
|
location.href = WST.U('home/shops/shopstreet','keyword='+v,true);
|
|
}
|
|
WST.goodsSearch = function(v){
|
|
location.href = WST.U('home/goods/search','keyword='+v,true);
|
|
}
|
|
WST.showCategoryNavs = function(){
|
|
if($('.wst-filters')[0]){
|
|
$(".drop-down").hover(function(){
|
|
$(this).addClass("hover");
|
|
},function(){
|
|
$(this).removeClass("hover");
|
|
});
|
|
$(".dorp-down-layer").hover(function(){
|
|
$(this).prev().addClass("hover");
|
|
},function(){
|
|
$(this).prev().removeClass("hover");
|
|
});
|
|
}
|
|
}
|
|
WST.Sidebar = function(){
|
|
if(!$('#wst-categorys')[0])return;
|
|
|
|
if(!$('#wst-categorys').hasClass('j-index')){
|
|
WST.dropDownLayer("#wst-categorys",".j-cate-dd");
|
|
}
|
|
$(".dd-inner").children(".item").hover(function() { //一级导航悬浮
|
|
$('.categeMenuImg').lazyload({ effect: "fadeIn",failurelimit : 10,skip_invisible : false,threshold: 100,placeholder:window.conf.IMGURL+'/'+window.conf.GOODS_LOGO});//默认图片
|
|
$(this).parent().find('.over-cat').show();
|
|
|
|
$(this).addClass("hover").siblings(".item").removeClass("hover");
|
|
var index = $(this).index();
|
|
$(".dorpdown-layer").children(".item-sub").hide();
|
|
$(".dorpdown-layer").children(".item-sub").eq(index).show();
|
|
|
|
var start = $('.j-cate-dt').offset().top;
|
|
var obj = $('#index_menus_sub');
|
|
var sh = document.documentElement.scrollTop || document.body.scrollTop; // 滚动条距离顶部高度
|
|
if(sh>start+36){
|
|
var start = sh-start;
|
|
}else{
|
|
var start = 36;
|
|
}
|
|
//obj.stop().animate({ "top": start });
|
|
obj.css('top',start);
|
|
|
|
|
|
},function(){
|
|
$(this).parent().find('.over-cat').hide();
|
|
});
|
|
|
|
|
|
|
|
$('.over-cat-icon').parent().mouseover(function(){
|
|
$(this).find('.over-cat-icon').addClass('over-cat-icon-hover');
|
|
});
|
|
$('.over-cat-icon').parent().mouseout(function(){
|
|
$(this).find('.over-cat-icon').removeClass('over-cat-icon-hover');
|
|
});
|
|
|
|
$(".dd-inner").children(".item").mouseover(function() {
|
|
|
|
$('.dd-inner').find('.over-cat').show();
|
|
|
|
var iCon = $(this).attr('id');
|
|
$('.'+iCon).addClass(iCon+'-hover');
|
|
});
|
|
$(".dd-inner").children(".item").mouseout(function() {
|
|
|
|
$('.dd-inner').find('.over-cat').hide();
|
|
|
|
var iCon = $(this).attr('id');
|
|
$('.'+iCon).removeClass(iCon+'-hover');
|
|
});
|
|
|
|
$("#index_menus_sub").hover(function(){
|
|
$('.dd-inner').find('.over-cat').show();
|
|
$(this).show();
|
|
},function(){
|
|
$(this).hide();
|
|
$('.dd-inner').find('.over-cat').hide();
|
|
});
|
|
$(".dd-inner").hover(function() { //整个导航菜单悬浮,是否显示二级导航到出厂
|
|
$("#index_menus_sub").show();
|
|
|
|
}, function() {
|
|
$("#index_menus_sub").hide();
|
|
$('.item').removeClass("hover");
|
|
})
|
|
$("#index_menus_sub").children(".item-sub").hover(function() { //二级导航悬浮
|
|
var index = $(this).index();
|
|
$(".dd-inner").children(".item").eq(index).addClass("hover");
|
|
$("#index_menus_sub").show();
|
|
var i = index+1;
|
|
$('.cat-icon-'+i).addClass('cat-icon-'+i+'-hover');
|
|
}, function() {
|
|
$("#index_menus_sub").hide();
|
|
$(".dd-inner").children(".item").removeClass("hover");
|
|
var index = $(this).index();
|
|
var i = index+1;
|
|
$('.cat-icon-'+i).removeClass('cat-icon-'+i+'-hover');
|
|
|
|
});
|
|
|
|
$('.fore2').hover(function(){
|
|
$(this).children('dt').css('background-color','#ff6a53');
|
|
},function(){
|
|
$(this).children('dt').css('background-color','');
|
|
});
|
|
}
|
|
WST.dropDownLayer = function(dropdown,layer){
|
|
$(dropdown).hover(function () {
|
|
$(this).find(layer).show();
|
|
}, function () {
|
|
$(this).find(layer).hide();
|
|
});
|
|
$(layer).hover(function () {
|
|
$(this).find(layer).show();
|
|
}, function () {
|
|
$(this).find(layer).hide();
|
|
});
|
|
}
|
|
|
|
|
|
WST.tips = function(content, selector, options){
|
|
|
|
var opts = {};
|
|
opts = $.extend(opts, {tips:1, time:2000, maxWidth: 260}, options);
|
|
return layer.tips(content, selector, opts);
|
|
}
|
|
WST.open = function(options){
|
|
var opts = {};
|
|
opts = $.extend(opts, {offset:'100px'}, options);
|
|
return layer.open(opts);
|
|
}
|
|
WST.confirm = function(options){
|
|
var opts = {};
|
|
opts = $.extend(opts, {title:'系统提示',offset:'200px'}, options);
|
|
return layer.confirm(opts.content,{icon: 'wst3', title:opts.title,offset:opts.offset},options.yes,options.cancel);
|
|
}
|
|
WST.load = function(options){
|
|
var opts = {};
|
|
opts = $.extend(opts,{time:0,icon:'wstloading',shade: [0.4, '#000000'],offset: '200px',area: ['280px', '65px']},options);
|
|
return layer.msg(opts.msg, opts);
|
|
}
|
|
WST.msg = function(msg, options, func){
|
|
var opts = {};
|
|
if(options){
|
|
if(options.icon==1){
|
|
options.icon='wst1';
|
|
}else if(options.icon==2 || options.icon==5){
|
|
options.icon='wst2';
|
|
}else if(options.icon==3){
|
|
options.icon='wst3';
|
|
}
|
|
}
|
|
//有抖動的效果,第二位是函數
|
|
if(typeof(options)!='function'){
|
|
opts = $.extend(opts,{time:1000,shade: [0.4, '#000000'],offset: '200px'},options);
|
|
return layer.msg(msg, opts, func);
|
|
}else{
|
|
return layer.msg(msg, options);
|
|
}
|
|
}
|
|
WST.toJson = function(str,noAlert){
|
|
var json = {};
|
|
try{
|
|
if(typeof(str )=="object"){
|
|
json = str;
|
|
}else{
|
|
json = eval("("+str+")");
|
|
}
|
|
if(typeof(noAlert)=='undefined'){
|
|
if(json.status && json.status=='-999'){
|
|
WST.msg('对不起,您已经退出系统!请重新登录',{icon:5},function(){
|
|
if(window.parent){
|
|
window.parent.location.reload();
|
|
}else{
|
|
location.reload();
|
|
}
|
|
});
|
|
}else if(json.status && json.status=='-998'){
|
|
WST.msg('对不起,您没有操作权限,请与管理员联系');
|
|
return;
|
|
}
|
|
}
|
|
}catch(e){
|
|
WST.msg("系统发生错误:"+e.getMessage,{icon:5});
|
|
json = {};
|
|
}
|
|
return json;
|
|
}
|
|
|
|
//刷新验证码
|
|
WST.logout = function(){
|
|
$.post(WST.U('home/users/logout'),{},function(data,textStatus){
|
|
var json = WST.toJson(data);
|
|
WST.msg(json.msg,{icon:1});
|
|
location.href=WST.U('home/index/index');
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 上传图片
|
|
*/
|
|
WST.upload = function(opts){
|
|
var _opts = {};
|
|
_opts = $.extend(_opts,{auto: true,swf: WST.conf.ROOT +'/plugins/webuploader/Uploader.swf',server:WST.U('home/index/uploadPic')},opts);
|
|
var uploader = WebUploader.create(_opts);
|
|
uploader.on('uploadSuccess', function( file,response ) {
|
|
var json = WST.toJson(response._raw);
|
|
if(_opts.callback)_opts.callback(json,file);
|
|
});
|
|
uploader.on('uploadError', function( file ) {
|
|
if(_opts.uploadError)_opts.uploadError();
|
|
});
|
|
uploader.on( 'uploadProgress', function( file, percentage ) {
|
|
percentage = percentage.toFixed(2)*100;
|
|
if(_opts.progress)_opts.progress(percentage);
|
|
});
|
|
return uploader;
|
|
}
|
|
|
|
|
|
WST.goTo = function(obj){
|
|
location.href = $(obj).attr('data');
|
|
}
|
|
WST.getVerify = function(id){
|
|
$(id).attr('src',WST.U('home/index/getVerify','rnd='+Math.random()));
|
|
}
|
|
WST.loginWindow = function(){
|
|
WST.currentUrl();
|
|
$.post(WST.U('home/users/toLoginBox'),{},function(data){
|
|
WST.open({type:1,area:['550px','360px'],offset:'auto',title:'用户登录',content:data});
|
|
});
|
|
}
|
|
WST.currentUrl = function(url){
|
|
if(!url)var url = window.location.href;
|
|
$.post(WST.U('home/index/currenturl'),{url:url},function(data){});
|
|
}
|
|
/********************* 选项卡切换隐藏 **********************/
|
|
$.fn.TabPanel = function(options){
|
|
var defaults = {tab: 0};
|
|
var opts = $.extend(defaults, options);
|
|
var t = this;
|
|
|
|
$(t).find('.wst-tab-nav li').click(function(){
|
|
$(this).addClass("on").siblings().removeClass();
|
|
var index = $(this).index();
|
|
$(t).find('.wst-tab-content .wst-tab-item').eq(index).show().siblings().hide();
|
|
if(opts.callback)opts.callback(index);
|
|
});
|
|
$(t).find('.wst-tab-nav li').eq(opts.tab).click();
|
|
}
|
|
/**
|
|
* 去除url中指定的参数(用于分页)
|
|
*/
|
|
WST.splitURL = function(spchar){
|
|
var url = location.href;
|
|
var urlist = url.split("?");
|
|
var furl = new Array();
|
|
var fparams = new Array();
|
|
furl.push(urlist[0]);
|
|
if(urlist.length>1){
|
|
var urlparam = urlist[1];
|
|
params = urlparam.split("&");
|
|
for(var i=0; i<params.length; i++){
|
|
var vparam = params[i];
|
|
var param = vparam.split("=");
|
|
if(param[0]!=spchar){
|
|
fparams.push(vparam);
|
|
}
|
|
}
|
|
if(fparams.length>0){
|
|
furl.push(fparams.join("&"));
|
|
}
|
|
|
|
}
|
|
if(furl.length>1){
|
|
return furl.join("?");
|
|
}else{
|
|
return furl.join("");
|
|
}
|
|
}
|
|
WST.addCart = function(goodsId){
|
|
// if(window.conf.IS_LOGIN==0){
|
|
// WST.loginWindow();
|
|
// return;
|
|
// }
|
|
$.post(WST.U('home/carts/addCart'),{goodsId:goodsId,buyNum:1},function(data,textStatus){
|
|
var json = WST.toJson(data,1);
|
|
if(json.status==1){
|
|
WST.msg(json.msg,{icon:1,time:600,shade:false});
|
|
if(json.data && json.data.forward){
|
|
location.href=WST.U('home/carts/'+json.data.forward);
|
|
}
|
|
getRightCart();
|
|
}else{
|
|
if(json.status==-999){
|
|
|
|
WST.loginWindow();
|
|
return;
|
|
}else{
|
|
WST.msg(json.msg,{icon:2});
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
WST.delCart = function(id){
|
|
WST.confirm({content:'您确定要删除该商品吗?',yes:function(index){
|
|
$.post(WST.U('home/carts/delCart'),{id:id,rnd:Math.random()},function(data,textStatus){
|
|
var json = WST.toJson(data);
|
|
if(json.status==1){
|
|
WST.msg(json.msg,{icon:1});
|
|
location.href=WST.U('home/carts/index');
|
|
}else{
|
|
WST.msg(json.msg,{icon:2});
|
|
}
|
|
});
|
|
}});
|
|
}
|
|
WST.changeCartGoods = function(id,buyNum,isCheck){
|
|
$.post(WST.U('home/carts/changeCartGoods'),{id:id,isCheck:isCheck,buyNum:buyNum,rnd:Math.random()},function(data,textStatus){
|
|
var json = WST.toJson(data);
|
|
if(json.status!=1){
|
|
WST.msg(json.msg,{icon:2});
|
|
}
|
|
});
|
|
}
|
|
WST.dropDownLayerCart = function(dropdown,layer){
|
|
$(dropdown).hover(function () {
|
|
$(this).find(layer).show();
|
|
WST.checkCart();
|
|
}, function () {
|
|
$(this).find(layer).hide();
|
|
});
|
|
$(layer).hover(function (event) {
|
|
event.stopPropagation();
|
|
$(this).show();
|
|
}, function (event) {
|
|
event.stopPropagation();
|
|
$(this).hide();
|
|
});
|
|
}
|
|
WST.delCheckCart = function(id,func){
|
|
$.post(WST.U('home/carts/delCart'),{id:id,rnd:Math.random()},function(data,textStatus){
|
|
var json = WST.toJson(data);
|
|
if(json.status==1){
|
|
WST.msg(json.msg,{icon:1});
|
|
WST.checkCart();
|
|
}else{
|
|
WST.msg(json.msg,{icon:2});
|
|
}
|
|
});
|
|
}
|
|
WST.checkCart = function(){
|
|
$('#list-carts2').html('');
|
|
$('#list-carts3').html('');
|
|
$('#list-carts').html('<div style="padding:32px 0px 77px 112px;"><img src="'+WST.conf.ROOT+'/hyhproject/home/view/default/img/loading.gif">正在加载数据...</div>');
|
|
$.post(WST.U('home/carts/getCartInfo'),'',function(data) {
|
|
var json = WST.toJson(data,true);
|
|
if(json.status==1){
|
|
json = json.data;
|
|
if(json.list.length>0){
|
|
var gettpl = document.getElementById('list-cart').innerHTML;
|
|
laytpl(gettpl).render(json, function(html){
|
|
$('#list-carts').html(html);
|
|
});
|
|
$('#list-carts2').html('<div class="comm" id="list-comm"> 共<span>'+json.goodsTotalNum+'</span>件商品<span class="span2">¥'+json.goodsTotalMoney+'</span></div>');
|
|
$('#list-carts3').html('<a href="'+window.conf.ROOT+'/home/carts/index" class="btn btn-3">去购物车结算</a>');
|
|
$('.goodsImgc').lazyload({ effect: "fadeIn",failurelimit : 10,skip_invisible : false,threshold: 200,placeholder:window.conf.IMGURL+'/'+window.conf.GOODS_LOGO});//商品默认图片
|
|
if(json.list.length>5){
|
|
$('#list-carts').css('overflow-y','scroll').css('height','416');
|
|
}
|
|
}else{
|
|
$('#list-carts').html('<p class="carts">购物车中空空如也,赶紧去选购吧~</p>');
|
|
}
|
|
$('#goodsTotalNum').html(json.goodsTotalNum);
|
|
}else{
|
|
$('#list-carts').html('<p class="carts">购物车中空空如也,赶紧去选购吧~</p>');
|
|
$('#goodsTotalNum').html(0);
|
|
}
|
|
});
|
|
}
|
|
WST.changeIptNum = function(diffNum,iptId,btnId,id,func){
|
|
var suffix = (id)?"_"+id:"";
|
|
var iptElem = $(iptId+suffix);
|
|
var minVal = parseInt(iptElem.attr('data-min'),10);
|
|
var maxVal = parseInt(iptElem.attr('data-max'),10);
|
|
var tmp = 0;
|
|
if(maxVal<minVal){
|
|
tmp = maxVal;
|
|
maxVal = minVal;
|
|
minVal = tmp;
|
|
}
|
|
var num = parseInt(iptElem.val(),10);
|
|
num = num?num:1;
|
|
num = num + diffNum;
|
|
btnId = btnId.split(',');
|
|
$(btnId[0]+suffix).css('color','#666');
|
|
$(btnId[1]+suffix).css('color','#666');
|
|
if(minVal>=num){
|
|
num=minVal;
|
|
$(btnId[0]+suffix).css('color','#ccc');
|
|
}
|
|
if(maxVal<=num){
|
|
num=maxVal;
|
|
$(btnId[1]+suffix).css('color','#ccc');
|
|
}
|
|
iptElem.val(num);
|
|
if(suffix!='')WST.changeCartGoods(id,num,-1);
|
|
if(func){
|
|
var fn = window[func];
|
|
fn();
|
|
}
|
|
}
|
|
WST.shopQQ = function(val){
|
|
if(WST.blank(val) !=''){
|
|
return [
|
|
'<a href="tencent://message/?uin='+val+'&Site=QQ交谈&Menu=yes">',
|
|
'<img border="0" src="http://wpa.qq.com/pa?p=1:'+val+':7" alt="QQ交谈" width="71" height="24" />',
|
|
'</a>'
|
|
].join('');
|
|
}else{
|
|
return '';
|
|
}
|
|
}
|
|
WST.shopWangWang = function(val){
|
|
if(WST.blank(val) !=''){
|
|
return [
|
|
'<a target="_blank" href="http://www.taobao.com/webww/ww.php?ver=3&touid='+val+'&siteid=cntaobao&status=1&charset=utf-8">',
|
|
'<img border="0" src="http://amos.alicdn.com/realonline.aw?v=2&uid='+val+'&site=cntaobao&s=1&charset=utf-8" alt="和我联系" />',
|
|
'</a>'
|
|
].join('');
|
|
}else{
|
|
return '';
|
|
}
|
|
}
|
|
WST.cancelFavorite = function(obj,type,id,fId){
|
|
if(window.conf.IS_LOGIN==0){
|
|
WST.loginWindow();
|
|
return;
|
|
}
|
|
var param = {},str = '商品';
|
|
param.id = fId;
|
|
param.type = type;
|
|
str = (type==1)?'店铺':'商品';
|
|
$.post(WST.U('home/favorites/cancel'),param,function(data,textStatus){
|
|
var json = WST.toJson(data);
|
|
if(json.status=='1'){
|
|
WST.msg(json.msg,{icon:1});
|
|
$(obj).removeClass('j-fav').addClass('j-fav2');
|
|
$(obj).html('关注'+str)[0].onclick = function(){
|
|
WST.addFavorite(obj,type,id,fId);
|
|
};
|
|
}else{
|
|
WST.msg(json.msg,{icon:5});
|
|
}
|
|
});
|
|
}
|
|
|
|
|
|
WST.addFavorite = function(obj,type,id,fId){
|
|
if(window.conf.IS_LOGIN==0){
|
|
WST.loginWindow();
|
|
return;
|
|
}
|
|
$.post(WST.U('home/favorites/add'),{type:type,id:id},function(data,textStatus){
|
|
var json = WST.toJson(data);
|
|
if(json.status==1){
|
|
WST.msg(json.msg,{icon:1});
|
|
$(obj).removeClass('j-fav2').addClass('j-fav');
|
|
$(obj).html('已关注')[0].onclick = function(){
|
|
WST.cancelFavorite(obj,type,id,json.data.fId);
|
|
};
|
|
}else{
|
|
WST.msg(json.msg,{icon:2});
|
|
}
|
|
});
|
|
}
|
|
/**
|
|
* 循环调用及设置商品分类
|
|
* @param id 当前分类ID
|
|
* @param val 当前分类值
|
|
* @param childIds 分类路径值【数组】
|
|
* @param isRequire 是否要求必填
|
|
* @param className 样式,方便将来获取值
|
|
* @param beforeFunc 运行前回调函数
|
|
* @param afterFunc 运行后回调函数
|
|
*/
|
|
WST.ITSetGoodsCats = function(opts){
|
|
var obj = $('#'+opts.id);
|
|
obj.attr('lastgoodscat',1);
|
|
var level = $('#'+opts.id).attr('level')?(parseInt($('#'+opts.id).attr('level'),10)+1):1;
|
|
if(opts.childIds.length>0){
|
|
opts.childIds.shift();
|
|
if(opts.beforeFunc){
|
|
if(typeof(opts.beforeFunc)=='function'){
|
|
opts.beforeFunc({id:opts.id,val:opts.val});
|
|
}else{
|
|
var fn = window[opts.beforeFunc];
|
|
fn({id:opts.id,val:opts.val});
|
|
}
|
|
}
|
|
$.post(WST.U('home/goodscats/listQuery'),{parentId:opts.val},function(data,textStatus){
|
|
var json = WST.toJson(data);
|
|
if(json.data && json.data.length>0){
|
|
opts.isLast = false;
|
|
json = json.data;
|
|
var html = [];
|
|
var tid = opts.id+"_"+opts.val;
|
|
html.push("<select id='"+tid+"' level='"+level+"' class='"+opts.className+"' "+(opts.isRequire?" data-rule='required;' ":"")+">");
|
|
html.push("<option value=''>-请选择-</option>");
|
|
for(var i=0;i<json.length;i++){
|
|
var cat = json[i];
|
|
html.push("<option value='"+cat.catId+"' "+((opts.childIds[0]==cat.catId)?"selected":"")+">"+cat.catName+"</option>");
|
|
}
|
|
html.push('</select>');
|
|
$(html.join('')).insertAfter(obj);
|
|
var tidObj = $('#'+tid);
|
|
if(tidObj.val()!=''){
|
|
obj.removeAttr('lastgoodscat');
|
|
tidObj.attr('lastgoodscat',1);
|
|
opts.id = tid;
|
|
opts.val = tidObj.val();
|
|
WST.ITSetGoodsCats(opts);
|
|
}
|
|
tidObj.change(function(){
|
|
opts.id = tid;
|
|
opts.val = $(this).val();
|
|
WST.ITGoodsCats(opts);
|
|
})
|
|
}else{
|
|
opts.isLast = true;
|
|
opts.lastVal = opts.val;
|
|
}
|
|
if(opts.afterFunc){
|
|
if(typeof(opts.afterFunc)=='function'){
|
|
opts.afterFunc(opts);
|
|
}else{
|
|
var fn = window[opts.afterFunc];
|
|
fn(opts);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 循环创建商品分类
|
|
* @param id 当前分类ID
|
|
* @param val 当前分类值
|
|
* @param className 样式,方便将来获取值
|
|
* @param isRequire 是否要求必填
|
|
* @param beforeFunc 运行前回调函数
|
|
* @param afterFunc 运行后回调函数
|
|
*/
|
|
WST.ITGoodsCats = function(opts){
|
|
opts.className = opts.className?opts.className:"j-goodsCats";
|
|
var obj = $('#'+opts.id);
|
|
obj.attr('lastgoodscat',1);
|
|
var level = parseInt(obj.attr('level'),10)+1;
|
|
$("select[id^='"+opts.id+"_']").remove();
|
|
if(opts.isRequire)$('.msg-box[for^="'+opts.id+'_"]').remove();
|
|
if(opts.beforeFunc){
|
|
if(typeof(opts.beforeFunc)=='function'){
|
|
opts.beforeFunc({id:opts.id,val:opts.val});
|
|
}else{
|
|
var fn = window[opts.beforeFunc];
|
|
fn({id:opts.id,val:opts.val});
|
|
}
|
|
}
|
|
opts.lastVal = opts.val;
|
|
if(opts.val==''){
|
|
obj.removeAttr('lastgoodscat');
|
|
var lastId = 0,level = 0,tmpLevel = 0,lasObjId;
|
|
$('.'+opts.className).each(function(){
|
|
tmpLevel = parseInt($(this).attr('level'),10);
|
|
if(level <= tmpLevel && $(this).val()!=''){
|
|
level = tmpLevel;
|
|
lastId = $(this).val();
|
|
lasObjId = $(this).attr('id');
|
|
}
|
|
})
|
|
$('#'+lasObjId).attr('lastgoodscat',1);
|
|
opts.id = lasObjId;
|
|
opts.val = $('#'+lasObjId).val();
|
|
opts.isLast = true;
|
|
opts.lastVal = opts.val;
|
|
if(opts.afterFunc){
|
|
if(typeof(opts.afterFunc)=='function'){
|
|
opts.afterFunc(opts);
|
|
}else{
|
|
var fn = window[opts.afterFunc];
|
|
fn(opts);
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
$.post(WST.U('home/goodscats/listQuery'),{parentId:opts.val},function(data,textStatus){
|
|
var json = WST.toJson(data);
|
|
if(json.data && json.data.length>0){
|
|
opts.isLast = false;
|
|
json = json.data;
|
|
var html = [];
|
|
var tid = opts.id+"_"+opts.val;
|
|
html.push("<select id='"+tid+"' level='"+level+"' class='"+opts.className+"' "+(opts.isRequire?" data-rule='required;' ":"")+">");
|
|
html.push("<option value='' >-请选择-</option>");
|
|
for(var i=0;i<json.length;i++){
|
|
var cat = json[i];
|
|
html.push("<option value='"+cat.catId+"'>"+cat.catName+"</option>");
|
|
}
|
|
html.push('</select>');
|
|
$(html.join('')).insertAfter(obj);
|
|
$("#"+tid).change(function(){
|
|
opts.id = tid;
|
|
opts.val = $(this).val();
|
|
if(opts.val!=''){
|
|
obj.removeAttr('lastgoodscat');
|
|
}
|
|
WST.ITGoodsCats(opts);
|
|
})
|
|
}else{
|
|
opts.isLast = true;
|
|
opts.lastVal = opts.val;
|
|
}
|
|
if(opts.afterFunc){
|
|
if(typeof(opts.afterFunc)=='function'){
|
|
opts.afterFunc(opts);
|
|
}else{
|
|
var fn = window[opts.afterFunc];
|
|
fn(opts);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
/**
|
|
* 获取最后已选分类的id
|
|
*/
|
|
WST.ITGetAllGoodsCatVals = function(srcObj,className){
|
|
var goodsCatId = '';
|
|
$('.'+className).each(function(){
|
|
if($(this).attr('lastgoodscat')=='1')goodsCatId = $(this).attr('id')+'_'+$(this).val();
|
|
});
|
|
goodsCatId = goodsCatId.replace(srcObj+'_','');
|
|
return goodsCatId.split('_');
|
|
}
|
|
/**
|
|
* 获取最后分类值
|
|
*/
|
|
WST.ITGetGoodsCatVal = function(className){
|
|
var goodsCatId = '';
|
|
$('.'+className).each(function(){
|
|
if($(this).attr('lastgoodscat')=='1')goodsCatId = $(this).val();
|
|
});
|
|
return goodsCatId;
|
|
}
|
|
/**
|
|
* 循环创建地区
|
|
* @param id 当前分类ID
|
|
* @param val 当前分类值
|
|
* @param className 样式,方便将来获取值
|
|
* @param isRequire 是否要求必填
|
|
* @param beforeFunc 运行前回调函数
|
|
* @param afterFunc 运行后回调函数
|
|
*/
|
|
WST.ITAreas = function(opts){
|
|
opts.className = opts.className?opts.className:"j-areas";
|
|
var obj = $('#'+opts.id);
|
|
obj.attr('lastarea',1);
|
|
var level = parseInt(obj.attr('level'),10)+1;
|
|
$("select[id^='"+opts.id+"_']").remove();
|
|
if(opts.isRequire)$('.msg-box[for^="'+opts.id+'_"]').remove();
|
|
if(opts.beforeFunc){
|
|
if(typeof(opts.beforeFunc)=='function'){
|
|
opts.beforeFunc({id:opts.id,val:opts.val});
|
|
}else{
|
|
var fn = window[opts.beforeFunc];
|
|
fn({id:opts.id,val:opts.val});
|
|
}
|
|
}
|
|
opts.lastVal = opts.val;
|
|
if(opts.val==''){
|
|
obj.removeAttr('lastarea');
|
|
var lastId = 0,level = 0,tmpLevel = 0,lasObjId;
|
|
$('.'+opts.className).each(function(){
|
|
tmpLevel = parseInt($(this).attr('level'),10);
|
|
if(level <= tmpLevel && $(this).val()!=''){
|
|
level = tmpLevel;
|
|
lastId = $(this).val();
|
|
lasObjId = $(this).attr('id');
|
|
}
|
|
})
|
|
$('#'+lasObjId).attr('lastarea',1);
|
|
opts.id = lasObjId;
|
|
opts.val = $('#'+lasObjId).val();
|
|
opts.isLast = true;
|
|
opts.lastVal = opts.val;
|
|
if(opts.afterFunc){
|
|
if(typeof(opts.afterFunc)=='function'){
|
|
opts.afterFunc(opts);
|
|
}else{
|
|
var fn = window[opts.afterFunc];
|
|
fn(opts);
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
$.post(WST.U('home/areas/listQuery'),{parentId:opts.val},function(data,textStatus){
|
|
var json = WST.toJson(data);
|
|
if(json.data && json.data.length>0){
|
|
json = json.data;
|
|
var html = [],tmp;
|
|
var tid = opts.id+"_"+opts.val;
|
|
html.push("<select id='"+tid+"' level='"+level+"' class='"+opts.className+"' "+(opts.isRequire?" data-rule='required;' ":"")+">");
|
|
html.push("<option value='' >-请选择-</option>");
|
|
for(var i=0;i<json.length;i++){
|
|
tmp = json[i];
|
|
html.push("<option value='"+tmp.areaId+"'>"+tmp.areaName+"</option>");
|
|
}
|
|
html.push('</select>');
|
|
$(html.join('')).insertAfter(obj);
|
|
$("#"+tid).change(function(){
|
|
opts.id = tid;
|
|
opts.val = $(this).val();
|
|
if(opts.val!=''){
|
|
obj.removeAttr('lastarea');
|
|
}
|
|
WST.ITAreas(opts);
|
|
})
|
|
}else{
|
|
opts.isLast = true;
|
|
opts.lastVal = opts.val;
|
|
}
|
|
if(opts.afterFunc){
|
|
if(typeof(opts.afterFunc)=='function'){
|
|
opts.afterFunc(opts);
|
|
}else{
|
|
var fn = window[opts.afterFunc];
|
|
fn(opts);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
/**
|
|
* 循环调用及设置地区
|
|
* @param id 当前地区ID
|
|
* @param val 当前地区值
|
|
* @param childIds 地区路径值【数组】
|
|
* @param isRequire 是否要求必填
|
|
* @param className 样式,方便将来获取值
|
|
* @param beforeFunc 运行前回调函数
|
|
* @param afterFunc 运行后回调函数
|
|
*/
|
|
WST.ITSetAreas = function(opts){
|
|
var obj = $('#'+opts.id);
|
|
obj.attr('lastarea',1);
|
|
var level = $('#'+opts.id).attr('level')?(parseInt($('#'+opts.id).attr('level'),10)+1):1;
|
|
if(opts.childIds.length>0){
|
|
opts.childIds.shift();
|
|
if(opts.beforeFunc){
|
|
if(typeof(opts.beforeFunc)=='function'){
|
|
opts.beforeFunc({id:opts.id,val:opts.val});
|
|
}else{
|
|
var fn = window[opts.beforeFunc];
|
|
fn({id:opts.id,val:opts.val});
|
|
}
|
|
}
|
|
$.post(WST.U('home/areas/listQuery'),{parentId:opts.val},function(data,textStatus){
|
|
var json = WST.toJson(data);
|
|
if(json.data && json.data.length>0){
|
|
json = json.data;
|
|
var html = [],tmp;
|
|
var tid = opts.id+"_"+opts.val;
|
|
html.push("<select id='"+tid+"' level='"+level+"' class='"+opts.className+"' "+(opts.isRequire?" data-rule='required;' ":"")+">");
|
|
html.push("<option value=''>-请选择-</option>");
|
|
for(var i=0;i<json.length;i++){
|
|
tmp = json[i];
|
|
html.push("<option value='"+tmp.areaId+"' "+((opts.childIds[0]==tmp.areaId)?"selected":"")+">"+tmp.areaName+"</option>");
|
|
}
|
|
html.push('</select>');
|
|
$(html.join('')).insertAfter(obj);
|
|
var tidObj = $('#'+tid);
|
|
if(tidObj.val()!=''){
|
|
obj.removeAttr('lastarea');
|
|
tidObj.attr('lastarea',1);
|
|
opts.id = tid;
|
|
opts.val = tidObj.val();
|
|
WST.ITSetAreas(opts);
|
|
}
|
|
tidObj.change(function(){
|
|
opts.id = tid;
|
|
opts.val = $(this).val();
|
|
WST.ITAreas(opts);
|
|
})
|
|
}else{
|
|
opts.isLast = true;
|
|
opts.lastVal = opts.val;
|
|
}
|
|
if(opts.afterFunc){
|
|
if(typeof(opts.afterFunc)=='function'){
|
|
opts.afterFunc(opts);
|
|
}else{
|
|
var fn = window[opts.afterFunc];
|
|
fn(opts);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|
|
/**
|
|
* 获取最后地区的值
|
|
*/
|
|
WST.ITGetAreaVal = function(className){
|
|
var areaId = '';
|
|
$('.'+className).each(function(){
|
|
if($(this).attr('lastarea')=='1')areaId = $(this).val();
|
|
});
|
|
return areaId;
|
|
}
|
|
/**
|
|
* 获取最后已选分类的id
|
|
*/
|
|
WST.ITGetAllAreaVals = function(srcObj,className){
|
|
var areaId = '';
|
|
$('.'+className).each(function(){
|
|
if($(this).attr('lastarea')=='1')areaId = $(this).attr('id')+'_'+$(this).val();
|
|
});
|
|
areaId = areaId.replace(srcObj+'_','');
|
|
return areaId.split('_');
|
|
}
|
|
/**记录广告点击**/
|
|
WST.recordClick = function(adId){
|
|
$.post(WST.U('home/ads/recordClick'),{id:adId},function(data){});
|
|
}
|
|
/**
|
|
* 获取用户信息
|
|
*/
|
|
WST.getSysMessages = function(val){
|
|
if(WST.conf.IS_LOGIN==0)return;
|
|
$.post(WST.U('home/index/getSysMessages'),{tasks:val},function(data){
|
|
var json = WST.toJson(data);
|
|
if(json.message){
|
|
$('#wst-user-messages').html(json.message.num);
|
|
if(parseInt(json.message.num,10)>0){
|
|
$('#wst-user-messages').css('color','red');
|
|
if($('.j-message-count')[0])$('.j-message-count').show().html(json.message.num);
|
|
if($('#mId_'+json.message.id)[0])$('#mId_'+json.message.id).addClass('wst-msg-tips-box').html(json.message.num);
|
|
if($('#mId_'+json.message.sid)[0])$('#mId_'+json.message.sid).addClass('wst-msg-tips-box').html(json.message.num);
|
|
}else{
|
|
$('#wst-user-messages').css('color','#666');
|
|
if($('.j-message-count')[0])$('.j-message-count').hide();
|
|
if($('#mId_'+json.message.id)[0])$('#mId_'+json.message.id).removeClass('wst-msg-tips-box').html('');
|
|
}
|
|
}
|
|
if(json.cart){
|
|
$('#goodsTotalNum').html(json.cart.goods);
|
|
if(json.cart.goods>0){
|
|
if($('.j-cart-count')[0])$('.j-cart-count').show().html(json.cart.goods);
|
|
}else{
|
|
if($('.j-cart-count')[0])$('.j-cart-count').hide().html('');
|
|
}
|
|
}
|
|
if(json.userorder){
|
|
for(var key in json.userorder){
|
|
if($('#mId_'+key)[0]){
|
|
if(json.userorder[key]!='0'){
|
|
$('#mId_'+key).addClass('wst-msg-tips-box').html(json.userorder[key]);
|
|
}else{
|
|
$('#mId_'+key).removeClass('wst-msg-tips-box').html('');
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if(json.shoporder){
|
|
for(var key in json.shoporder){
|
|
if($('#mId_'+key)[0]){
|
|
if(json.shoporder[key]!='0'){
|
|
$('#mId_'+key).addClass('wst-msg-tips-box').html(json.shoporder[key]);
|
|
}else{
|
|
$('#mId_'+key).removeClass('wst-msg-tips-box').html('');
|
|
}
|
|
}
|
|
}
|
|
}
|
|
});
|
|
}
|
|
WST.position = function(mid,mtype){
|
|
$.post(WST.U('home/index/position'),{menuId:mid,menuType:mtype},function(data){});
|
|
}
|
|
//关闭顶部广告
|
|
WST.closeAds = function(t){
|
|
$(t).parent().remove();
|
|
}
|
|
WST.closeIframe = function(){
|
|
var index = parent.layer.getFrameIndex(window.name);
|
|
parent.layer.close(index);
|
|
}
|
|
WST.shopsCats = function(objId,pVal,objVal){
|
|
$('#'+objId).empty();
|
|
$.post(WST.U('home/shopcats/listQuery'),{parentId:pVal},function(data,textStatus){
|
|
var json = WST.toJson(data);
|
|
var html = [],cat;
|
|
html.push("<option value='' >-请选择-</option>");
|
|
if(json.status==1 && json.list){
|
|
json = json.list;
|
|
for(var i=0;i<json.length;i++){
|
|
cat = json[i];
|
|
html.push("<option value='"+cat.catId+"' "+((objVal==cat.catId)?"selected":"")+">"+cat.catName+"</option>");
|
|
}
|
|
}
|
|
$('#'+objId).html(html.join(''));
|
|
});
|
|
}
|
|
|
|
WST.slides = function(objId){
|
|
var slide = $(objId), li = slide.find("li");
|
|
var slidecontrols = $(objId+'-controls').eq(0),
|
|
span = slidecontrols.find("span");
|
|
var index = 1, _self = null;
|
|
span.bind("mouseover", function() {
|
|
_self = $(this);
|
|
index = span.index(_self);
|
|
span.removeClass("curr");
|
|
span.eq(index).addClass("curr");
|
|
li.addClass("hide");
|
|
li.css("z-index", -1);
|
|
li.css("display", "none");
|
|
li.eq(index).css("display", "");
|
|
li.eq(index).css("z-index", 1);
|
|
li.eq(index).removeClass("hide");
|
|
clearInterval(timer);
|
|
});
|
|
var timer = setInterval(function() {
|
|
span.removeClass("curr");
|
|
span.eq(index).addClass("curr");
|
|
li.addClass("hide");
|
|
li.css("z-index", -1);
|
|
li.css("display", "none");
|
|
li.eq(index).fadeToggle(500);
|
|
li.eq(index).css("z-index", 1);
|
|
li.eq(index).removeClass("hide");
|
|
index++;
|
|
if (index >= span.length)
|
|
index = 0;
|
|
}, 4000);
|
|
span.bind("mouseout", function() {
|
|
index++;
|
|
if (index >= span.length)
|
|
index = 0;
|
|
timer = setInterval(function() {
|
|
span.removeClass("curr");
|
|
span.eq(index).addClass("curr");
|
|
li.addClass("hide");
|
|
li.css("z-index", -1);
|
|
li.css("display", "none");
|
|
li.eq(index).fadeToggle(500);
|
|
li.eq(index).css("z-index", 1);
|
|
li.eq(index).removeClass("hide");
|
|
index++;
|
|
if (index >= span.length)
|
|
index = 0;
|
|
}, 4000);
|
|
});
|
|
}
|
|
|
|
/*! Lazy Load 1.9.3 - MIT license - Copyright 2010-2013 Mika Tuupola */
|
|
!function(a,b,c,d){var e=a(b);a.fn.lazyload=function(f){function g(){var b=0;i.each(function(){var c=a(this);if(!j.skip_invisible||c.is(":visible"))if(a.abovethetop(this,j)||a.leftofbegin(this,j));else if(a.belowthefold(this,j)||a.rightoffold(this,j)){if(++b>j.failure_limit)return!1}else c.trigger("appear"),b=0})}var h,i=this,j={threshold:0,failure_limit:0,event:"scroll",effect:"show",container:b,data_attribute:"original",skip_invisible:!0,appear:null,load:null,placeholder:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC"};return f&&(d!==f.failurelimit&&(f.failure_limit=f.failurelimit,delete f.failurelimit),d!==f.effectspeed&&(f.effect_speed=f.effectspeed,delete f.effectspeed),a.extend(j,f)),h=j.container===d||j.container===b?e:a(j.container),0===j.event.indexOf("scroll")&&h.bind(j.event,function(){return g()}),this.each(function(){var b=this,c=a(b);b.loaded=!1,(c.attr("src")===d||c.attr("src")===!1)&&c.is("img")&&c.attr("src",j.placeholder),c.one("appear",function(){if(!this.loaded){if(j.appear){var d=i.length;j.appear.call(b,d,j)}a("<img />").bind("load",function(){var d=c.attr("data-"+j.data_attribute);c.hide(),c.is("img")?c.attr("src",d):c.css("background-image","url('"+d+"')"),c[j.effect](j.effect_speed),b.loaded=!0;var e=a.grep(i,function(a){return!a.loaded});if(i=a(e),j.load){var f=i.length;j.load.call(b,f,j)}}).attr("src",c.attr("data-"+j.data_attribute))}}),0!==j.event.indexOf("scroll")&&c.bind(j.event,function(){b.loaded||c.trigger("appear")})}),e.bind("resize",function(){g()}),/(?:iphone|ipod|ipad).*os 5/gi.test(navigator.appVersion)&&e.bind("pageshow",function(b){b.originalEvent&&b.originalEvent.persisted&&i.each(function(){a(this).trigger("appear")})}),a(c).ready(function(){g()}),this},a.belowthefold=function(c,f){var g;return g=f.container===d||f.container===b?(b.innerHeight?b.innerHeight:e.height())+e.scrollTop():a(f.container).offset().top+a(f.container).height(),g<=a(c).offset().top-f.threshold},a.rightoffold=function(c,f){var g;return g=f.container===d||f.container===b?e.width()+e.scrollLeft():a(f.container).offset().left+a(f.container).width(),g<=a(c).offset().left-f.threshold},a.abovethetop=function(c,f){var g;return g=f.container===d||f.container===b?e.scrollTop():a(f.container).offset().top,g>=a(c).offset().top+f.threshold+a(c).height()},a.leftofbegin=function(c,f){var g;return g=f.container===d||f.container===b?e.scrollLeft():a(f.container).offset().left,g>=a(c).offset().left+f.threshold+a(c).width()},a.inviewport=function(b,c){return!(a.rightoffold(b,c)||a.leftofbegin(b,c)||a.belowthefold(b,c)||a.abovethetop(b,c))},a.extend(a.expr[":"],{"below-the-fold":function(b){return a.belowthefold(b,{threshold:0})},"above-the-top":function(b){return!a.belowthefold(b,{threshold:0})},"right-of-screen":function(b){return a.rightoffold(b,{threshold:0})},"left-of-screen":function(b){return!a.rightoffold(b,{threshold:0})},"in-viewport":function(b){return a.inviewport(b,{threshold:0})},"above-the-fold":function(b){return!a.belowthefold(b,{threshold:0})},"right-of-fold":function(b){return a.rightoffold(b,{threshold:0})},"left-of-fold":function(b){return!a.rightoffold(b,{threshold:0})}})}(jQuery,window,document);
|
|
|