function layer_media_init_func(layerid,params){ var $curlayer=$('#'+layerid), _duration = -1; $('#wp-media-image_'+layerid).off('mouseover').mouseover(function (event) { if($curlayer.data('wopop_effects') && $curlayer.hasClass('now_effecting')){ return; } var effect=$curlayer.data('wopop_imgeffects'); var $this=$(this); var running=$this.data('run'); if(effect && running!=1){ var effectrole = effect['effectrole']; var dset = effect['dset']; var effectel=$curlayer; if(effectrole=='dantu' && effect['effect']=="effect.rotation"){ $curlayer.data('iseffectrotate',true); effectel=$curlayer.find('.wp-media_content'); }else if(effectrole !='dantu' && dset && dset['effect']=="effect.rotation"){ $curlayer.data('iseffectrotate',true); effectel=$curlayer.find('.wp-media_content'); } effectel.setimgEffects(true,effect,1); if(effectrole !='dantu' && typeof(dset)!="undefined"){ // fixed bug#5949 if ($curlayer.hasClass('now_effecting')) { _duration = dset.duration; $curlayer.wopop_effect_command('stop'); } var temp_effect = {}; temp_effect['type'] = effect['type']; temp_effect['effectrole'] = 'dantu'; temp_effect['effect'] = effect['dset']['effect']; temp_effect['duration'] = effect['dset']['duration']; effectel.setimgEffects(true,temp_effect,1); } } }); // fixed bug#5949 $curlayer.mouseleave(function(e){ var $target = $(this), _tt = parseInt(_duration); if (!isNaN(_tt) && _tt >= 0 && !$target.hasClass('now_effecting')) { var timer = setTimeout(function(){ $target.showEffects(); _duration = -1; clearTimeout(timer); }, _tt); } }); var imgover=$('#wp-media-image_'+layerid).closest('.img_over'); imgover.children('.imgloading').width(imgover.width()).height(imgover.height()); imgover.css('position','relative'); $('#'+layerid).layer_ready(function(){ layer_img_lzld(layerid); }); if(!params.isedit && !params.has_effects){ if ($('#'+$('#'+layerid).attr('fatherid')).attr('type') == 'pop_up') { $('#wp-media-image_'+layerid).attr('src',params.img_src); $('#wp-media-image_'+layerid).parents('.img_over:first').children('.imgloading').remove(); } } }; function wp_getdefaultHoverCss(layer_id) { var getli=''; var geta=''; var cssstyle=''; var navStyle = wp_get_navstyle(layer_id,'datasty_'); if(navStyle.length > 0) { var patt1 = new RegExp("#nav_layer[0-9|a-z|A-Z]+\\s+li\.wp_subtop:\\s*hover\\s*{[^}]+}",'i'); var tmp = patt1.exec(navStyle); if(tmp) { var tmp1 = tmp[0].match(/{[^}]+}/)[0]; tmp1=tmp1.replace('{','').replace('}',''); getli=getli+tmp1; } patt1 = new RegExp("#nav_layer[0-9|a-z|A-Z]+\\s+li\.wp_subtop>a:\\s*hover\\s*{[^}]+}",'i'); tmp = patt1.exec(navStyle); if(tmp) { var tmp2 = tmp[0].match(/{[^}]+}/)[0]; tmp2=tmp2.replace('{','').replace('}',''); geta=geta+tmp2; } } navStyle = wp_get_navstyle(layer_id,'datastys_'); var getlia=''; if(navStyle.length > 0) { var layidlow=('#nav_'+layer_id+' li.wp_subtop>a:hover').toLowerCase(); if( ('a'+navStyle).toLowerCase().indexOf(layidlow)>0){ var parstr="#nav_"+ layer_id +" li.wp_subtop>a:hover"; getlia = navStyle.split(new RegExp(parstr,"i")); var combilestr=''; for(key in getlia){ var ervervalue=''; if(('a'+getlia[key]).indexOf('{')<3 && ('a'+getlia[key]).indexOf('{')>0 ){ var parvalue=getlia[key].split('{'); if(('a'+parvalue[1]).indexOf('}')>0){ ervervalue=parvalue[1].split('}')[0]; } } combilestr=combilestr+ervervalue; } geta=geta+combilestr; } layidlow=('#nav_'+layer_id+' li.wp_subtop:hover').toLowerCase(); if( ('a'+navStyle).toLowerCase().indexOf(layidlow)>0){ var parstr="#nav_"+ layer_id +" li.wp_subtop:hover"; getlia = navStyle.split(new RegExp(parstr,"i")); var combilestrs=''; for(var key in getlia){ var ervervalue=''; if(('a'+getlia[key]).indexOf('{')<3 && ('a'+getlia[key]).indexOf('{')>0 ){ var parvalue=getlia[key].split('{'); if(('a'+parvalue[1]).indexOf('}')>0){ ervervalue=parvalue[1].split('}')[0]; } } combilestrs=combilestrs+ervervalue; } getli=getli+combilestrs; } } if(getli.length>0){ getli="#"+layer_id+" li.lihover{"+getli+"} "; } if(geta.length>0){ geta="#"+layer_id+" li>a.ahover{"+geta+"} "; } cssstyle=getli+geta; if(cssstyle.length>0 && ($('#canvas #'+layer_id).length>0 || $('#site_footer #'+layer_id).length>0)){ cssstyle=""+cssstyle+""; cssstyle=cssstyle.replace(/[\r\n]/g, " ").replace(/\s+/g, " "); var doms=$('#'+layer_id); var oldcssstyle=doms.data('get_layer_hover_css'); if(oldcssstyle != cssstyle){ $("#hover"+layer_id+"").text(""+cssstyle+""); doms.data('get_layer_hover_css',cssstyle); get_plugin_css("H"+ layer_id +"H",cssstyle); } } } function wp_showdefaultHoverCss(layer_id){ var layertype=$('#'+layer_id).attr('type'); if(layertype && window['wp_showdefaultHoverCss_'+layertype]){ return window['wp_showdefaultHoverCss_'+layertype](layer_id); } return false; } function wp_showdefaultHoverCss_new_navigation(layer_id) { var plugin_name=$("#"+layer_id).attr('type'); var hover=$("#"+layer_id).find('.nav1').attr('hover'); if(hover!=1){ return;} wp_getdefaultHoverCss(layer_id); var n=0; var rootpid=0; if(plugin_name=='new_navigation'){ var page_id=$("#page_id").val(); rootpid=$("#page_id").attr("rpid")*1; }else{ var page_id=$('#'+layer_id+'').find(".default_pid").html(); if(page_id==0 || page_id.length==0){ page_id=$('#nav_'+layer_id+'').children('li:first').attr('pid'); } } $('#nav_'+layer_id+'').children('li').each(function(){ var type_pid=$(this).attr('pid'); if( (type_pid==page_id ) && plugin_name=='new_navigation' ){ $(this).addClass("lihover").children('a').addClass("ahover"); } if(type_pid==rootpid && rootpid>0){ $(this).addClass('rootlihover'); } var t_bool = false; var whref = window.location.href.replace(/^https?:/,'').replace(/&brd=1$/,'');; var t_href= $(this).find("a").attr("href").replace(/^https?:/,'').replace(/&brd=1$/,'');; var $nav1 = $('#'+layer_id).children('.wp-new_navigation_content').children('.nav1'); var sethomeurl = $nav1.attr("sethomeurl"); if(sethomeurl) sethomeurl = sethomeurl.replace(/^https?:/,''); var cururl = window.location.href.replace(/^https?:/,''); if( (whref.indexOf("&menu_id=")>0 && t_href.indexOf("id=")>0 && whref.indexOf(t_href)>-1) || t_href == sethomeurl && sethomeurl.indexOf(cururl)>-1 ){ t_bool = true; } if(whref == t_href || whref== t_href+"&brd=1" || t_bool){ $(this).addClass("lihover").children('a').addClass("ahover"); } n++; }); if(!$('#nav_'+layer_id+'').children('li.lihover').length){ $('#nav_'+layer_id+'').children('li.rootlihover:first').addClass("lihover").children('a').addClass("ahover"); } $('#nav_'+layer_id+' .rootlihover').removeClass('rootlihover'); } function wp_nav_addMoreButton(layer_id) { var type_style=$("#"+layer_id).find('.wp-new_navigation_content').attr('type'); var index=0; var func=function(){ if(!$('#scroll_container #'+layer_id+':visible').length){ if(index<=20){ setTimeout(func,500); index++; } return; } var firstLiTop = 0; var hasMore = false; $('#scroll_container #nav_'+layer_id).children('li.wp_subtop').each(function(i){ if(i == 0) {firstLiTop = $(this).offset().top;return true;} if($(this).offset().top > firstLiTop) { if(i==1){ var twice=$("#"+layer_id).data('twiced'); if(!twice){ $("#"+layer_id).data('twiced',true); setTimeout(func,1500); return false; } } if(type_style==2){ $(this).remove(); }else{ $('#'+layer_id).data('hasMore','yes');//配置逻辑获取 var more = $.trim($('#'+layer_id).children('.wp-new_navigation_content').children('.nav1').attr('more')); var doms = $(this).prev().prev().nextAll().clone(); var objA = $(this).prev().children('a'); if(objA.children('span').length > 0) objA.children('span').html(more); else objA.html(more); if(objA.hasClass('sub')) { objA.next('ul').empty(); doms.appendTo(objA.next('ul')); } else { objA.after(''); doms.appendTo(objA.next('ul')); objA.addClass('sub'); } objA.addClass('nav_more_link'); $(this).prev().nextAll().remove(); objA.next('ul').children('li').removeClass('wp_subtop').removeClass('lihover').children('a').removeClass("ahover"); hasMore = true; objA.attr('href','/contact'); return false; } } }); if(!hasMore) $('#'+layer_id).data('hasMore','no'); wp_showdefaultHoverCss(layer_id); }; func(); } //编辑模式水平拖动动态刷新修改More按钮 function wp_updateMoreButton(layer_id) { var $layer = $('#'+layer_id); var $nav1 = $layer.children('.wp-new_navigation_content').children('.nav1'); var tmp_css = $.trim($("#datastys_"+layer_id).text()); var tmp_cssa = $.trim($("#datasty_"+layer_id).text()); $.post(parseToURL("new_navigation","refreshNavigator",{menustyle:$.trim($nav1.attr('skin')),saveCss:'yes',page_id:$("#page_id").val(),blockid:layer_id,typeval:$.trim($layer.find(".wp-new_navigation_content").attr('type')),colorstyle:$.trim($nav1.attr('colorstyle')),direction:$.trim($nav1.attr('direction')),more:$.trim($nav1.attr('more')),hover:$.trim($nav1.attr('hover')),hover_scr:$.trim($nav1.attr('hover_scr')),umenu:$.trim($nav1.attr('umenu')),dmenu:$.trim($nav1.attr('dmenu')),moreshow:$.trim($nav1.attr('moreshow')),morecolor:$.trim($nav1.attr('morecolor')),smcenter:$.trim($nav1.attr('smcenter'))}),{"addopts": $layer.mod_property("addopts")||{},menudata:$("#"+layer_id).data("menudata")},function(data){ $layer.find('.wp-new_navigation_content').html(data); $("#datastys_"+layer_id).text(tmp_css); get_plugin_css(layer_id,tmp_cssa+" "+tmp_css); }); wp_showdefaultHoverCss(layer_id); } function wp_removeLoading(layer_id) { var $nav1 = $('#'+layer_id).find(".nav1"); var ishorizon=$nav1.attr("ishorizon"); if(ishorizon=='1'){ $("#"+layer_id).find('.wp-new_navigation_content').css({height:'auto',overflow:'hidden'}); }else{ $("#"+layer_id).find('.wp-new_navigation_content').css({width:'auto',overflow:'hidden'}); } // 修复IE浏览器部分版本导航无法显示问题 2013/12/26 var temptimer = setTimeout(function(){ $("#"+layer_id).find('.wp-new_navigation_content').css("overflow", 'visible'); clearTimeout(temptimer); }, 50); } function richtxt(layer_id) { var type=$("#"+layer_id).find('.wp-new_navigation_content').attr('type'); if(type==2){ var baseloop = 0; $("#"+layer_id).find('.ddli').each(function(){ $(this).addClass("setdiff"+baseloop); baseloop++; }); } } function wp_createNavigationgetSubMenuHoverCssFunc(param){ var layer_id=param.layer_id; var editmode=param.editmode; function getSubMenuHoverCss(css_pro,type){ var typeval=type; if(typeval==1){ var regex = "#nav_layer[0-9|a-z|A-Z]+\\s+ul+\\s+li+\\s+a:\\s*hover\\s*{\\s*"+css_pro+"\\s*:[^;]+"; }else{ var regex = "#nav_layer[0-9|a-z|A-Z]+\\s+li\.wp_subtop>a:\\s*hover\\s*{\\s*"+css_pro+"\\s*:[^;]+"; } if(editmode){ var navStyle = $.trim($("#datastys_"+layer_id).text()); }else{ var navStyle = $.trim($("#"+layer_id).data("datastys_")); } if(navStyle.length > 0){ var patt1 =new RegExp(regex,'i'); var tmp = patt1.exec($.trim(navStyle)); if(tmp) { return $.trim((tmp[0].match(/{[^:]+:[^;]+/)[0]).match(/:[^;]+/)[0].replace(':','')); } } if(editmode){ navStyle = $.trim($("#datasty_"+layer_id).text()); }else{ navStyle = $.trim($("#"+layer_id).data("datasty_")); } if(navStyle.length > 0) { if(typeval==1){ var patt1 = new RegExp("#nav_layer[0-9|a-z|A-Z]+\\s+ul+\\s+li+\\s+a:\\s*hover\\s*{[^}]+}",'i'); }else{ var patt1 = new RegExp("#nav_layer[0-9|a-z|A-Z]+\\s+li\.wp_subtop>a:\\s*hover\\s*{[^}]+}",'i'); } var tmp = patt1.exec(navStyle); if(tmp) { var tmp1 = tmp[0].match(/{[^}]+}/)[0]; var patt2 = new RegExp(css_pro+"\\s*:\\s*[^;]+;",'i'); tmp = patt2.exec(tmp1); if(tmp) return $.trim(tmp[0].replace(/[^:]+:/,'').replace(';','')); } } return $.trim($("#nav_"+layer_id+" ul li a").css(css_pro)); } window[layer_id+'_getSubMenuHoverCss']=getSubMenuHoverCss; } function layer_new_navigation_content_func(params){ var layer_id = params['layer_id']; $("#"+layer_id).find('.menu_hs11').css('visibility','hidden'); var contentfunc=function(){ if($("#"+layer_id).is(':visible')){ $("#"+layer_id).find('.wp-new_navigation_content').each(function(){ var wid = $(this).width(); var liwid = $(this).find('li:eq(0)'); var lipadd = parseInt(liwid.css('padding-right'))+parseInt(liwid.css('padding-left')); var isEmptyMenu=false; if($(this).find('li.wp_subtop').length==1){ var menulinktxt=$(this).find('li.wp_subtop a').text(); if(menulinktxt=='No menu!'){ isEmptyMenu=true; } } if (!isEmptyMenu && $.inArray(params.menustyle, ['hs7','hs9','hs11','hs12']) != -1) { var bwidth = parseFloat(liwid.css("borderRightWidth") || '0'); if(bwidth>0) bwidth=parseInt(bwidth + 0.1); else bwidth =0; if(bwidth > 0) $('li.wp_subtop', this).width(function(i, h){return h - bwidth - 1}); else if(!$("#canvas").data('changewidth_'+layer_id)){ $("#canvas").data('changewidth_'+layer_id,true); if(params.menustyle=='hs12'){ $('li.wp_subtop', this).width(function(i, h){return h - 1}) }else{ var totalw=0; $('li.wp_subtop', this).width(function(i, h){totalw+=h;return h}) var ulwidth=$(this).find('#nav_'+layer_id).width(); if(totalw>ulwidth){ for(var i=0;i(wid-lipadd)){ $(this).find('li.wp_subtop').css('width',wid-lipadd); } }); $("#"+layer_id).find('.menu_hs11,.menu_hs7,.menu_hs12').css('visibility',''); var contenth=$("#"+layer_id+" .wp-new_navigation_content").height(); if(contenth==0){ $("#"+layer_id+" .wp-new_navigation_content").css('height',''); } }else{ setTimeout(contentfunc,60); } } contentfunc(); if(params.isedit){$('#'+layer_id).mod_property({"addopts": params.addopts});} if((params.addopts||[]).length > 0 && /^hs/i.test(params.menustyle)){$('#nav_'+layer_id+' li.wp_subtop:last').css("border-right", 'none');} if(! params.isedit){ if($.inArray(params.menustyle, ['vertical_vs6','vertical_vs7']) != -1){ var $layer=$('#'+layer_id).find(".wp-new_navigation_content"); var vswidth=$layer.width(); var $ul=$layer.find('ul.navigation'); $ul.css({width:vswidth+'px'}); $ul.find("li.wp_subtop").css({width:(vswidth-14)+'px'}); } } }; function layer_new_navigation_hs6_func(params){ var layer_id = params.layer_id; window[layer_id+'_getSubMenuHoverCss'] = function(css_pro,type){ var typeval=type; if(typeval==1){ var regex = "#nav_layer[0-9|a-z|A-Z]+\\s+ul+\\s+li+\\s+a:\\s*hover\\s*{\\s*"+css_pro+"\\s*:[^;]+"; }else{ var regex = "#nav_layer[0-9|a-z|A-Z]+\\s+li\.wp_subtop>a:\\s*hover\\s*{\\s*"+css_pro+"\\s*:[^;]+"; } var navStyle = wp_get_navstyle(layer_id, 'datastys_'); if(navStyle.length > 0) { var patt1 =new RegExp(regex,'i'); var tmp = patt1.exec($.trim(navStyle)); if(tmp) { return $.trim((tmp[0].match(/{[^:]+:[^;]+/)[0]).match(/:[^;]+/)[0].replace(':','')); } } var navStyle = wp_get_navstyle(layer_id, 'datasty_'); if(navStyle.length > 0) { if(typeval==1){ var patt1 = new RegExp("#nav_layer[0-9|a-z|A-Z]+\\s+ul+\\s+li+\\s+a:\\s*hover\\s*{[^}]+}",'i'); }else{ var patt1 = new RegExp("#nav_layer[0-9|a-z|A-Z]+\\s+li\.wp_subtop>a:\\s*hover\\s*{[^}]+}",'i'); } var tmp = patt1.exec(navStyle); if(tmp) { var tmp1 = tmp[0].match(/{[^}]+}/)[0]; var patt2 = new RegExp(css_pro+"\\s*:\\s*[^;]+;",'i'); tmp = patt2.exec(tmp1); if(tmp) return $.trim(tmp[0].replace(/[^:]+:/,'').replace(';','')); } } return $.trim($("#nav_"+layer_id+" ul li a").css(css_pro)); }; $('#'+layer_id).layer_ready(function(){ setTimeout(function(){ wp_nav_addMoreButton(layer_id); },0); var fatherid = $.getElementFatherid($('#' + layer_id)) || ''; if(fatherid=='site_footer' || fatherid=='canvas') fatherid=''; var $father = fatherid.length ? $('#' + fatherid) : $([]), father_zidx = $father.css('zIndex'); $('#nav_'+layer_id).find('li').hover(function(){ if(params.isedit){ var resizehandle = parseInt($('#'+layer_id).children('.ui-resizable-handle').css('z-index')); if($(this).hasClass('wp_subtop')) $(this).parent().css('z-index',resizehandle+1); var canvas_zindex = $('#canvas').css('z-index'); var $toolbar = $(".propblk[super='"+layer_id+"']"); if($toolbar.length > 0) $toolbar.css('z-index',canvas_zindex - 1); } var smcenter=$("#"+layer_id).find('.nav1').attr('smcenter'); if ($(this).hasClass('wp_subtop')) { if (smcenter == 1) { var w = $(this).outerWidth(); var cw = $(this).children('ul').outerWidth(); var cl = parseInt((cw - w)/2); } else { var cl = 0; } } $(this).children('ul').css('left','-'+cl+'px').show(); if ($father.length) $father.css('z-index', '9999'); var type=$("#"+layer_id).find('.wp-new_navigation_content').attr('type'); if(type==2){ var self = $(this); var pos = 0 ; var loops = 0; $('#nav_'+layer_id).find('li').each(function(){ if(loops == 1) return true; if(self.html() == $(this).html()){ loops = 1; return true; }else{ pos = pos + $(this).outerWidth(); } }) $("#"+layer_id).find('.ddli').hide(); var this_width = $('#nav_'+layer_id).outerWidth(); var thisul_left = $('#nav_'+layer_id).css("padding-left"); thisul_left = parseInt(thisul_left); $(this).children('.ddli').outerWidth(this_width).css("margin-left","-"+(thisul_left+pos+5)+"px"); $(this).children('.ddli').eq(0).slideDown(); } },function(){ $(this).children('ul').hide(); if ($father.length) $father.css('z-index', father_zidx); if(params.isedit){ var resizehandle = parseInt($('#'+layer_id).children('.ui-resizable-handle').css('z-index')); var isHover = true; $('#nav_'+layer_id).find('ul').each(function(){ if($(this).css('display') != 'none') {isHover = false;return false;} }); if(isHover) { if(!($.browser.msie && $.browser.version < 9)) $(this).parent().css('z-index',resizehandle-1); var $toolbar = $(".propblk[super='"+layer_id+"']"); if($toolbar.length > 0) $toolbar.css('z-index','999'); } } var type=$("#"+layer_id).find('.wp-new_navigation_content').attr('type'); if(type==2){ $("#"+layer_id).find('.ddli').slideUp(); } }); //子菜单位置设置 $(".menu_"+params.menustyle+" #nav_"+layer_id).find('li').mouseenter(function(){ var firstLi = $(this); var firestLiouterWidth = firstLi.outerWidth(); var tmp_max_width = 0; firstLi.children('ul').children('li').each(function(){ if($(this).outerWidth() < firestLiouterWidth) $(this).width(firestLiouterWidth - parseInt($(this).css('padding-left')) - parseInt($(this).css('padding-right'))); else if($(this).outerWidth() > tmp_max_width) tmp_max_width = $(this).outerWidth(); }); if(tmp_max_width > 0) firstLi.children('ul').children('li').each(function(){ $(this).width(tmp_max_width - parseInt($(this).css('padding-left')) - parseInt($(this).css('padding-right'))); }); if(firstLi.parent('ul').attr('id') != 'nav_'+layer_id) firstLi.children('ul').css('margin-left',firstLi.outerWidth()); tmp_max_width = 0; }); //第三级即下级菜单随高度增加位置动态修改 $(".menu_"+params.menustyle+" #nav_"+layer_id+" ul li").hover(function(){ if($(this).children('ul').length > 0) { var marginTop = parseInt($(this).children('ul').css('margin-top')); if($(this).children('ul').offset().top > $(this).offset().top ||$(this).offset().top-50>$(this).children('ul').offset().top) $(this).children('ul').css('margin-top',marginTop - ($(this).children('ul').offset().top - $(this).offset().top) + 'px'); } }); $('.menu_'+params.menustyle+' #nav_'+layer_id).find('li').hover(function(){ var direction=$("#"+layer_id).find('.nav1').attr('direction'); var height = parseInt($(this).outerHeight()); if($(this).parent().hasClass('navigation')) { $('#nav_'+layer_id+' .wp_subtop').removeClass("lihover").children('a').removeClass("ahover"); if(direction==1){ $(this).children('ul').css('top','auto').css('bottom',height + 'px'); }else{ $(this).children('ul').css('top',height+'px').css('bottom','auto'); } $(this).children('a').css({'font-family':window[layer_id+'_getSubMenuHoverCss']("font-family",0),'font-size':window[layer_id+'_getSubMenuHoverCss']("font-size",0),'color':window[layer_id+'_getSubMenuHoverCss']("color",0),'font-weight':window[layer_id+'_getSubMenuHoverCss']("font-weight",0),'font-style':window[layer_id+'_getSubMenuHoverCss']("font-style",0)}); }else{ if(direction==1){ $(this).children('ul').css('top','auto').css('bottom', '-0px'); }else{ $(this).children('ul').css('top',height+'px').css('bottom','auto'); } $(this).children('a').css({'font-family':window[layer_id+'_getSubMenuHoverCss']("font-family",1),'font-size':window[layer_id+'_getSubMenuHoverCss']("font-size",1),'color':window[layer_id+'_getSubMenuHoverCss']("color",1),'font-weight':window[layer_id+'_getSubMenuHoverCss']("font-weight",1),'font-style':window[layer_id+'_getSubMenuHoverCss']("font-style",1)}); } },function(){ if($(this).parent().hasClass('navigation')) { wp_showdefaultHoverCss(layer_id); } $(this).children('a').attr("style",''); }); wp_showdefaultHoverCss(layer_id); wp_removeLoading(layer_id); }); }; function detectZoom (){ var ratio = 0, screen = window.screen, ua = navigator.userAgent.toLowerCase() || ''; if (window.devicePixelRatio !== undefined) { ratio = window.devicePixelRatio; }else if (~ua.indexOf('msie')) { if (screen.deviceXDPI && screen.logicalXDPI) { ratio = screen.deviceXDPI / screen.logicalXDPI; } }else if (window.outerWidth !== undefined && window.innerWidth !== undefined) { ratio = window.outerWidth / window.innerWidth; } if (ratio){ ratio = Math.round(ratio * 100); } return ratio; } function layer_unslider_init_func(params){ var layerid = params.layerid; var module_height =params.module_height; if (layerid.length == 0) return; //Set module height start if(module_height && parseInt(module_height)){ $('#'+layerid).css('height',module_height+'px').removeAttr('module_height'); $('#'+layerid+' .wp-resizable-wrapper').css('height',module_height+'px'); }//Set module height end var $content = $('#'+layerid+'_content'); var bsize =(params.pstyle != 'none') ? params.plborder_size : '0'; $content.css("border", params.pstyle); var fullparent = $content.parents('.fullpagesection').length; var borderwidth = 2 * parseInt(bsize),cntheight = $content.parent().height() - borderwidth,cnvpos = $('#canvas').offset(); if(fullparent) { cnvpos.left = Math.abs($('.fullpagesection').css('left').replace('px','')); } cnvpos.left += $._parseFloat($('#canvas').css("borderLeftWidth")) + $('#scroll_container').scrollLeft(); var canwidth = $('#scroll_container_bg').width()<$('#canvas').width()?$('#canvas').width():$('#scroll_container_bg').width(); if(fullparent) { canwidth = $(window).width(); } if(cnvpos.left<0) cnvpos.left=0; $content.css({left: (0-cnvpos.left)+'px',width: (canwidth - borderwidth)+'px',height: cntheight+'px'}); $('#'+layerid).css({left: '0',width: $('#canvas').width()}); $('#'+layerid+' .banner').css("min-height", cntheight+'px'); $('#'+layerid+' .banner').css("height", cntheight+'px'); $('#'+layerid+' .bannerul').css("height", cntheight+'px'); $('#'+layerid+' .banner ul li').css("min-height", cntheight+'px').css('width',($('#scroll_container_bg').width() - borderwidth)+'px');$('#'+layerid+' .banner ul li').css("height", cntheight+'px'); $('#'+layerid+' .banner .inner').css("padding", cntheight/2+'px 0px'); $('#'+layerid).layer_ready(function(){ var ctrldown = false; $(window).resize(function(){ if(!ctrldown){ setTimeout(function(){ var $content = $('#'+layerid+'_content'); var bsize =(params.pstyle != 'none') ? params.plborder_size : '0'; var borderwidth = 2 * parseInt(bsize),cntheight = $content.parent().height() - borderwidth,cnvpos = $('#canvas').offset(); cnvpos.left += $._parseFloat($('#canvas').css("borderLeftWidth")) + $('#scroll_container').scrollLeft(); var canwidth = $('#scroll_container_bg').width()<$('#canvas').width()?$('#canvas').width():$('#scroll_container_bg').width(); if(cnvpos.left<0) cnvpos.left=0; $content.css({left: (0-cnvpos.left)+'px',width: (canwidth - borderwidth)+'px',height: cntheight+'px'}); },0) } }) $(window).keydown(function(event){ if(!event.ctrlKey){ var $content = $('#'+layerid+'_content'); var bsize =(params.pstyle != 'none') ? params.plborder_size : '0'; var borderwidth = 2 * parseInt(bsize),cntheight = $content.parent().height() - borderwidth,cnvpos = $('#canvas').offset(); cnvpos.left += $._parseFloat($('#canvas').css("borderLeftWidth")) + $('#scroll_container').scrollLeft(); var canwidth = $('#scroll_container_bg').width()<$('#canvas').width()?$('#canvas').width():$('#scroll_container_bg').width(); if(cnvpos.left<0) cnvpos.left=0; $content.css({left: (0-cnvpos.left)+'px',width: (canwidth - borderwidth)+'px',height: cntheight+'px'}); }else{ ctrldown = true; } }) }) $('#'+layerid).layer_ready(function(){ var transitionstr=params.easing; if(params.easing=='all'){ transitionstr=($.browser.msie) ? "slide,slice,blocks,blinds,fade" : "slide,slice,blocks,blinds,shuffle,threed,fade"; } if(params.default_show=='1'){ var arrow_show='always'; } if(params.hover_show=='1'){ var arrow_show='mouseover'; } var $content = $('#'+layerid +' #'+layerid +'_content'); var cntheight = $content.parent().height(); cntheight = $('#'+layerid+' .wp-unslider_content').height(); if(cntheight=='') cntheight=267; var cnpos = $('#'+layerid+' .wp-unslider_content').offset(); var contentpos = (cntheight)-39; if(!params.arrow_left){ var arrow_left='template/default/images/left_arrow.png'; }else{ var arrow_left=params.arrow_left; } if(!params.arrow_right){ var arrow_right='template/default/images/right_arrow.png'; }else{ var arrow_right=params.arrow_right; } var scripts = document.getElementsByTagName("script"); var jsFolder = ""; for (var i= 0; i< scripts.length; i++) { if( scripts[i].src && scripts[i].src.match(/lovelygallery\.js/i)) jsFolder = scripts[i].src.substr(0, scripts[i].src.lastIndexOf("/") + 1); } $LAB .script(relativeToAbsoluteURL('plugin/unslider/js/html5zoo.js?v=11')).wait(function(){ if($('#'+layerid).data('wp_htmlzoo')) return; $('#'+layerid).data('wp_htmlzoo',true); var win_width = $('#scroll_container_bg').width(); jQuery("#"+layerid+"html5zoo-1").html5zoo({ jsfolder:jsFolder, width:win_width,height:cntheight, skinsfoldername:"",loadimageondemand:false,isresponsive:false, addmargin:true,randomplay:false, slideinterval:params.interval, // 控制时间 loop:0, autoplay:params.autoplays=='false'?false:true, skin:"Frontpage", navbuttonradius:0, navmarginy:contentpos,showshadow:false, navcolor:"#999999", texteffect:"fade", navspacing:12, arrowtop:50, textstyle:"static", navpreviewborder:4, navopacity:0.8, shadowcolor:"#aaaaaa", navborder:4, navradius:0, navmarginx:16, navstyle:"bullets", timercolor:"#ffffff", navfontsize:12, navhighlightcolor:"#333333", navheight:12,navwidth:12, navshowfeaturedarrow:false, titlecss:"display:block;position:relative;font:"+params.title_size+"px "+params.title_family+"; color:"+params.title_color+";",//font style arrowhideonmouseleave:500, arrowstyle:params.skin=='01'?'none':arrow_show, texteffectduration:win_width, border:0, timerposition:"bottom", navfontcolor:"#333333", borderradius:0, textcss:"display:block; padding:12px; text-align:left;", navbordercolor:"#ffffff", textpositiondynamic:"bottomleft", ribbonmarginy:0, ribbonmarginx:0, unsliderheight:cntheight, unsliderlid:layerid, arrowimage_left:arrow_left, arrowimage_right:arrow_right, nav_arrow_w_size:params.nav_arrow_w_size, nav_arrow_h_size:params.nav_arrow_h_size, navigation_style:params.navigation_style, navbg_hover_color:params.navbg_hover_color, nav_margin_bottom:params.nav_margin_bottom_size, nav_arrow:params.nav_arrow, nav_margin_left:params.nav_margin_left_size, nav_margin_right:params.nav_margin_right_size, skin:params.skin, pauseonmouseover:params.pauseonmouseover=='1'?true:false, slide: { duration:win_width, easing:"easeOutCubic", checked:true }, crossfade: { duration:win_width, easing:"easeOutCubic", checked:true }, threedhorizontal: { checked:true, bgcolor:"#222222", perspective:win_width, slicecount:1, duration:1500, easing:"easeOutCubic", fallback:"slice", scatter:5, perspectiveorigin:"bottom" }, slice: { duration:1500, easing:"easeOutCubic", checked:true, effects:"up,down,updown", slicecount:10 }, fade: { duration:win_width, easing:"easeOutCubic", checked:true, effects:"fade", }, blocks: { columncount:5, checked:true, rowcount:5, effects:"topleft,bottomright,top,bottom,random", duration:1500, easing:"easeOutCubic" }, blinds: { duration:2000, easing:"easeOutCubic", checked:true, slicecount:3 }, shuffle: { duration:1500, easing:"easeOutCubic", columncount:5, checked:true, rowcount:5 }, threed: { checked:true, bgcolor:"#222222", perspective:win_width, slicecount:5, duration:1500, easing:"easeOutCubic", fallback:"slice", scatter:5, perspectiveorigin:"right" }, transition: transitionstr }); //html5zoo-text position var fontheight = $('#'+layerid+' .unslidertxtf').height(); var textheight = parseInt(params.title_size)+10; if(params.show_title=='1'){ if($('#'+layerid+' .html5zoo-text-bg-1').css('display')=='none'){ var fv = parseInt($('#'+layerid+' .html5zoo-title-1').css('font-size')); var sv = parseInt($('#'+layerid+' .html5zoo-text-1').css('padding-top')); fontheight = fv+sv*2; }else if(fontheight zh) ? zw : zh; var ratioX = zw / r; var ratioY = zh / r; cxt.translate(zx, zx); cxt.scale(ratioX, ratioY); cxt.beginPath(); cxt.arc(zw/ratioX, zh/ratioY, r, 0, 2 * Math.PI, true); cxt.closePath(); cxt.restore(); if(fillcolor!='transparent') cxt.fillStyle=fillcolor; cxt.strokeStyle=strcolor; if(linepx!=0) cxt.lineWidth = linepx; //边框大小 if(fillcolor!='transparent') cxt.fill(); if(linepx!=0) cxt.stroke(); } /*五角星*/ Shapes['pentagram']=function(){ cxt.save(); var r = (zw > zh) ? zh : zw; cxt.translate(0, zx); cxt.beginPath(); //设置是个顶点的坐标,根据顶点制定路径 for (var i = 0; i < 5; i++) { cxt.lineTo(Math.cos((18+i*72)/180*Math.PI)*r+r+zx, -Math.sin((18+i*72)/180*Math.PI)*r+r+zx); cxt.lineTo(Math.cos((54+i*72)/180*Math.PI)*(r/2)+r+zx, -Math.sin((54+i*72)/180*Math.PI)*(r/2)+r+zx); } cxt.closePath(); if(fillcolor!='transparent') cxt.fillStyle = fillcolor; if(strcolor!='transparent') cxt.strokeStyle = strcolor; if(linepx!=0) cxt.lineWidth =linepx; if(fillcolor!='transparent') cxt.fill(); if(linepx!=0 && strcolor!='transparent') cxt.stroke(); cxt.restore();//返回原始状态 } /*三角形--*/ Shapes['triangle']=function(){ cxt.save(); cxt.beginPath(); cxt.moveTo(zx*2, zh*2+zx); cxt.lineTo(zw+zx, zx*2); cxt.lineTo(zw*2,zh*2+zx); cxt.closePath(); if(fillcolor!='transparent') cxt.fillStyle = fillcolor; if(strcolor!='transparent') cxt.strokeStyle = strcolor; if(linepx!=0) cxt.lineWidth =linepx; if(fillcolor!='transparent') cxt.fill(); if(linepx!=0 && strcolor!='transparent') cxt.stroke(); } /*平行四边形--*/ Shapes['parallelo']=function(){ cxt.save(); cxt.beginPath(); cxt.moveTo(zx*2, zh*2+zx); cxt.lineTo(zw*1.4, zh*2+zx); cxt.lineTo(zw*2, zx); cxt.lineTo(zw*0.6+linepx, zx); cxt.lineTo(zx*2, zh*2+zx); cxt.closePath(); if(fillcolor!='transparent') cxt.fillStyle = fillcolor; if(strcolor!='transparent') cxt.strokeStyle = strcolor; if(linepx!=0) cxt.lineWidth =linepx; if(fillcolor!='transparent') cxt.fill(); if(linepx!=0 && strcolor!='transparent') cxt.stroke(); } /*梯形--*/ Shapes['trapezium']=function() { cxt.save(); cxt.beginPath(); cxt.moveTo(zx*2, zh*2+zx); cxt.lineTo(zw*2, zh*2+zx); cxt.lineTo(zw*1.5+zx, zx); cxt.lineTo(zw*0.5+zx, zx); cxt.lineTo(zx*2, zh*2+zx); cxt.closePath(); if(fillcolor!='transparent') cxt.fillStyle = fillcolor; if(strcolor!='transparent') cxt.strokeStyle = strcolor; if(linepx!=0) cxt.lineWidth =linepx; if(fillcolor!='transparent') cxt.fill(); if(linepx!=0 && strcolor!='transparent') cxt.stroke(); } /*提示框形__左*/ Shapes['roundtip_left']=function(){ var radius=parseInt(zw)*0.075; //圆角大小 if(radius<12){ radius=12; } //圆角最小值 var rjh= zh*0.75; cxt.beginPath(); cxt.arc( radius+zx, radius+zx, radius, Math.PI, Math.PI * 3 / 2); cxt.lineTo(zw*2+zx - radius , zx); cxt.arc(zw*2+zx - radius , radius +zx, radius, Math.PI * 3 / 2, Math.PI * 2); cxt.lineTo(zw*2+zx , rjh*2 - radius); cxt.arc(zw*2+zx - radius , rjh*2 - radius , radius, 0, Math.PI * 1 / 2); cxt.lineTo(radius*2.2+zx , rjh*2); //左下箭头 cxt.lineTo(radius*0.9 +zx, rjh*2+radius); //左下箭头*/ cxt.arc(radius+zx , rjh*2- radius , radius, Math.PI * 1 / 2, Math.PI); cxt.closePath(); if(fillcolor!='transparent') cxt.fillStyle = fillcolor; if(strcolor!='transparent') cxt.strokeStyle = strcolor; if(linepx!=0) cxt.lineWidth = linepx; if(fillcolor!='transparent') cxt.fill(); if(linepx!=0 && strcolor!='transparent') cxt.stroke(); cxt.restore();//返回原始状态 } /*提示框形__右*/ Shapes['roundtip_right']=function() { var radius=parseInt(zw)*0.075; //圆角大小 if(radius<12){ radius=12; } //圆角最小值 var rjh= zh*0.75; cxt.beginPath(); cxt.arc( radius+zx, radius+zx, radius, Math.PI, Math.PI * 3 / 2); cxt.lineTo(zw*2+zx - radius , zx); cxt.arc(zw*2+zx - radius , radius +zx, radius, Math.PI * 3 / 2, Math.PI * 2); cxt.lineTo(zw*2+zx , rjh*2 - radius); cxt.arc(zw*2+zx - radius , rjh*2 - radius , radius, 0, Math.PI * 1 / 2); cxt.lineTo(zw*2+zx-radius*0.9 , rjh*2+radius); //右下箭头 cxt.lineTo(zw*2+zx-radius*2.2 , rjh*2); //右下箭头 cxt.arc(radius+zx , rjh*2- radius , radius, Math.PI * 1 / 2, Math.PI); cxt.closePath(); if(fillcolor!='transparent') cxt.fillStyle = fillcolor; if(strcolor!='transparent') cxt.strokeStyle = strcolor; if(linepx!=0) cxt.lineWidth = linepx; if(fillcolor!='transparent') cxt.fill(); if(linepx!=0 && strcolor!='transparent') cxt.stroke(); cxt.restore();//返回原始状态 } /*箭头--*/ Shapes['arrow']=function() { cxt.save(); cxt.beginPath(); cxt.moveTo(zx, zh*0.65+zx); cxt.lineTo(zx, zh*1.35+zx); cxt.lineTo(zw*1.04, zh*1.35+zx); cxt.lineTo(zw*1.04, zh*2); cxt.lineTo(zw*2,zh+zx); cxt.lineTo(zw*1.04, zx*2); cxt.lineTo(zw*1.04,zh*0.65+zx); cxt.closePath(); if(fillcolor!='transparent') cxt.fillStyle = fillcolor; if(strcolor!='transparent') cxt.strokeStyle = strcolor; if(linepx!=0) cxt.lineWidth =linepx; if(fillcolor!='transparent') cxt.fill(); if(linepx!=0 && strcolor!='transparent') cxt.stroke(); } /*钻石形--*/ Shapes['diamond']=function() { cxt.save(); cxt.beginPath(); cxt.moveTo(zx*2, zh*0.9); cxt.lineTo(zw+zx, zh*2); cxt.lineTo(zw*2, zh*0.9); cxt.lineTo(zw*1.55+zx,zh*0.38); cxt.lineTo(zw*0.45+zx,zh*0.38); cxt.closePath(); if(fillcolor!='transparent') cxt.fillStyle = fillcolor; if(strcolor!='transparent') cxt.strokeStyle = strcolor; if(linepx!=0) cxt.lineWidth =linepx; if(fillcolor!='transparent') cxt.fill(); if(linepx!=0 && strcolor!='transparent') cxt.stroke(); } /*正多边形*/ Shapes['isogon']=function(){ var ib=5; if(shape_params.ib>2) ib=shape_params.ib; var i,ang; var dzw=zw+zx*1.8-linepx; var dzh=zh+zx*1.8-linepx; var r = (dzw > dzh) ? dzh : dzw; ang = Math.PI*2/ib; //旋转的角度 cxt.save();//保存状态 cxt.translate(nw, nh);//原点移到x,y处,即要画的多边形中心 cxt.moveTo(0, -r);//据中心r距离处画点 cxt.beginPath(); for(i = 0;i < ib; i ++) { cxt.rotate(ang)//旋转 cxt.lineTo(0, -r);//据中心r距离处连线 } cxt.closePath(); if(fillcolor!='transparent') cxt.fillStyle = fillcolor; if(strcolor!='transparent') cxt.strokeStyle = strcolor; if(linepx!=0) cxt.lineWidth = linepx;//设置线宽 if(fillcolor!='transparent') cxt.fill(); if(linepx!=0 && strcolor!='transparent') cxt.stroke(); cxt.restore();//返回原始状态 } function ClearCanvas(){ cxt.clearRect(0, 0, nw*2, nh*2); } function layer_shapes_draw_func(params){ var layerid=params.layerid; var shapetype=params.shape_type; var canvasel=$('#'+layerid).find('canvas'); var w=$('#'+layerid).find('.wp-shapes_content').width(); var h=$('#'+layerid).find('.wp-shapes_content').height(); canvasel.attr('width',w); canvasel.attr('height',h); if(params.fillcolor) fillcolor=params.fillcolor; if(params.strcolor) strcolor=params.strcolor; if(params.borderline != null) linepx=parseFloat(params.borderline); shape_params=params; c = canvasel[0]; cxt = c.getContext("2d"); nw=parseFloat(w/2); nh=parseFloat(h/2); zw=nw-parseFloat(linepx/2); //减去边框后宽度 zh=nh-parseFloat(linepx/2); //减去边框后高度 zx=parseFloat(linepx/2); //减去边框顶点位置 ClearCanvas(); if(Shapes[shapetype]) Shapes[shapetype](); } window.layer_shapes_draw_func=layer_shapes_draw_func; })(); ; function layer_timeline_h1core(params){ var iseditor = params.isedit, $curlayer = $('#' + params.layerid), repos_ndate = function($target){ var $circle = $target.siblings('.circle'); $target.css({"top": function(){ return (parseInt($circle.css("top")) - $(this).height() - 2)+'px'; },"left": function(){ return Math.ceil(($circle.outerWidth() - $(this).width()) / 2)+'px'; }}); },show_details = function(){ var $details = $(this).siblings('.details'); if ($details.is(':visible')) return false; hide_details();/* Hide all 'popup' */ $(this).siblings('.date').andSelf().addClass("on"); $details.css({"display": 'block',"visibility": 'hidden'}); // Reset 'ndate' position var $date = $curlayer.find('.month > .date.on'); repos_ndate($date); // Set 'nline' margin-left $(this).siblings('.line').css("margin-left", $(this).outerWidth()+'px'); // Set 'popup' position var newtop = 0,_top = $details.outerHeight() + 12, ndate_top = parseInt($date.css("top")), maxtop = $curlayer.ab_pos("top") + ndate_top; var $arrow = $details.children('i'); $arrow.removeClass("arrowdn arrowup"); if (maxtop >= _top) { newtop = 0 - _top + ndate_top; $arrow.addClass("arrowdn"); } else { $arrow.addClass("arrowup"); newtop = parseInt($(this).css("top")) + $(this).outerWidth() + 12; } $details.css({"top": newtop+'px',"visibility": 'visible', "left": (0 - 25 + Math.ceil(($(this).outerWidth() - 12) / 2))+'px'}); $details.children('.icon').css("line-height", function(){ return $(this).siblings('.title').height()+'px'; }); if ('click' == params.etype) { $(document).unbind(".timelineh1").one("click.timelineh1", hide_details); } return false; },hide_details = function(){ var $target = $(this); if ('click' == params.etype) { $target = $('.cstlayer[type="timeline"] .circle.on'); } var $date = $target.siblings('.date'); $target.add($date).removeClass("on"); // Reset 'ndate' position repos_ndate($date); if(typeof($target.siblings('.line').context) == 'undefined'){ $target = $curlayer.find('.cstlayer[type="timeline"] .circle.on'); } // Set 'nline' margin-left $target.siblings('.line').css("margin-left", $target.outerWidth()+'px'); // Hide 'popup' $target.siblings('.details').css({"display": 'none',"visibility": ''}); }; // Reset 'ndate' position repos_ndate($curlayer.find('.month > .date')); // Mouse-event if (iseditor) { $curlayer.unbind("hoverStyleToggle").bind("hoverStyleToggle", function(e, v){ var self = $('li.month:first > .circle', this)[0]; if (v) show_details.apply(self); else hide_details.apply(self); }); // module resize $curlayer.unbind("modresize").bind("modresize", function(e, obj){ var uh = $('ul.timeline-box', this).height(), ch = $('> .wp-timeline_content', this).height(); if (! $.isEmptyObject(obj || {})) ch = obj.height; if (ch >= uh) return false; var size = $.padborder_logic($(this)); $(this).css("height", (uh + size.height)+'px') .children('.wp-timeline_content').css("height", uh+'px'); }); return false; } var $ncircle = $curlayer.find('.month > .circle'); if ('click' == params.etype) { $ncircle.bind("click", show_details); } else { $ncircle.hover(show_details, hide_details); } }