function layer_sitesearch_init_func(param,urllist,searchFlag){ var wp_productsearchcache=param.wp_productsearchcache; var langs=param.langs; var layerid=param.layer_id; var curseachtype='product'; var resswitch = param.sswitch?param.sswitch:'1'; function getCacheType(searchtype){ var dfd=$.Deferred(); if(searchtype=='article' && resswitch == '1'){ if(window.wp_articlesearchcache != null){ dfd.resolve(window.wp_articlesearchcache) }else{ $.ajax({ url:parseToURL("sitesearch","article_titlesearch",{'layerid':layerid}), success:function(data){ window.wp_articlesearchcache = eval(data); $('body').data('wp_searchcache',window.wp_articlesearchcache); dfd.resolve(window.wp_articlesearchcache); } }); } }else{ if(resswitch == '1'){ if(window.wp_productsearchcache != null){ dfd.resolve(window.wp_productsearchcache) }else{ $.ajax({ url:parseToURL("sitesearch","product_autocomplete",{'layerid':layerid}), success:function(data){ var res=$.parseJSON(data); if(res.result=='OK'){ window.wp_productsearchcache = res.data; $('body').data('wp_searchcache',window.wp_productsearchcache); dfd.resolve(window.wp_productsearchcache); } } }); } } } return dfd; } $('#'+layerid).layer_ready(function(){ var vskin =param.skin,$curlayer = $('#'+layerid); if(vskin=='skin4' || vskin=='skin5' || vskin=='skin6' || vskin=='skin7' || vskin=='skin8' || vskin=='skin9'){ $curlayer.find('.searchtype').css({'display':'none'}); }else $curlayer.find('.searchtype').css({'display':'block'}); if(vskin=='skin4' || vskin=='skin5'){ //adapt extend skin width 2014.4.27 $curlayer.bind("fixedsearchwidth",function(e,width){ var $target = $(this),$targetwidth = $target.find('.searchbox'); var this_btn_width = $target.find('.searchbox_btn').outerWidth(true); var this_txt_width = $target.find('.searchbox_txt').outerWidth(true); $targetwidth.css({'width':this_btn_width+this_txt_width}); }).triggerHandler("fixedsearchwidth"); //<<0){ dom.find('.sright').off('click').on('click',function(){ //explain:此处不知道为什么从dom对象中获取不到输入框的值,先改为$全局对象,author:fpf,date:2015-01-27,action:modify; //修改bug(1694) if(vskin == 'skin8'){ var keywords=$.trim($(this).parent().parent().parent().find('input[name="keywords"]').val()); } else if(vskin == 'skin9'){ var keywords=$.trim($(this).parent().parent().find('input[name="keywords"]').val()); }else { var keywords=$.trim($(this).parent().find('input[name="keywords"]').val()); } if(keywords.length == 0&&vskin!='skin8') {dom.find('input[name="keywords"]').focus();return false;} if(vskin=='skin8'){ var lowprice=$.trim(dom.find('input[name="lowprice"]').val().replace(/[^0-9]/ig,"")); if(lowprice.length == 0) {dom.find('input[name="lowprice"]').focus();return false;} var highprice=$.trim(dom.find('input[name="highprice"]').val().replace(/[^0-9]/ig,"")); if(highprice.length == 0) {dom.find('input[name="highprice"]').focus();return false;} } // 根据skin4,5,6,7,8,9的设置项进行搜索 if(searchFlag != 0 && searchFlag != 4){ if(vskin=='skin4' || vskin=='skin5' || vskin=='skin6' || vskin=='skin7' || vskin=='skin8' || vskin=='skin9'){ if(searchFlag == 1){ str = 'title'; }else if(searchFlag == 2){ str = 'intro'; }else if(searchFlag == 3){ str = 'content'; } } }else{ var selid=new Array(); var i=0; dom.find(".catetype").each(function(){ if($(this).prop("checked")){ selid[i]=$(this).val(); i++;} }); var str=''; if(selid.length>0){ str=selid.join(','); } if(str.length==0){ str='all'; } } var infotype=0; var sourcecotent=parent.$('#'+layerid).find('input[name=searchcontent]').val(); if(sourcecotent !='article' &&sourcecotent !='product'){ if(dom.find('.type_title').html()!=langs['Search Pro']){ infotype=1; } if(vskin=='skin4' || vskin=='skin5' || vskin=='skin6' || vskin=='skin8' || vskin=='skin9'){ infotype=0; } }else if(sourcecotent=='article'){ infotype=1; }else if(sourcecotent=='product'){ infotype=0; } dom.attr('infotype',infotype); $('body').data('wp_searchcache1','1'); var search_type = dom.data('search_type'); var searchskin = 2; if(vskin=='skin4' || vskin=='skin5' || vskin=='skin6' || vskin=='skin7' || vskin=='skin8' || vskin=='skin9'){ if(searchFlag != 0 && searchFlag != 4){ searchskin = 2; }else{ searchskin = 1; } } var open = $.trim(dom.find('.wp-sitesearch_container').attr('opn')); if(vskin=='skin8'){ //add high low price var url=parseToURL('sitesearch','search',{search_listNum:dom.data('search_listNum'),openProductUrl:dom.data('openProductUrl'),search_type:dom.data('search_type'),sswitch:dom.data('sswitch'),wordsplist:dom.data('wordsplist'),openArticleUrl:dom.data('openArticleUrl'),article_page:article_page,product_page:product_page,keywords:keywords,searchskin:searchskin,lowprice:lowprice,highprice:highprice,type:str,infotype:infotype,layerid:layerid,"searchFlag":searchFlag}); }else{ var url=parseToURL('sitesearch','search',{search_listNum:dom.data('search_listNum'),openProductUrl:dom.data('openProductUrl'),search_type:dom.data('search_type'),sswitch:dom.data('sswitch'),wordsplist:dom.data('wordsplist'),openArticleUrl:dom.data('openArticleUrl'),article_page:article_page,product_page:product_page,keywords:keywords,searchskin:searchskin,type:str,infotype:infotype,layerid:layerid,"searchFlag":searchFlag}); } var murl = '#'; if(search_type==1){ keywords = encodeURIComponent(keywords); if(infotype==1){ if(urllist['sitesearch_artlist']) murl = urllist['sitesearch_artlist']; }else{ if(urllist['sitesearch_prolist']) murl = urllist['sitesearch_prolist']; } url = murl; if(url!="#"){ if(url.indexOf("?")>0){ url = url+"&page=1&search_txt="+keywords+"&type="+str+"&searchskin="+searchskin+'&word_s='+dom.data('wordsplist'); }else{ url = url+"?page=1&search_txt="+keywords+"&type="+str+"&searchskin="+searchskin+'&word_s='+dom.data('wordsplist'); } if(vskin=='skin8'){ url = url+"&lowprice="+lowprice+"&highprice="+highprice; } url +='&fromid='+layerid; } } if(open=='1'){ window.open(url,'_blank'); }else{ if(search_type==1){ if((infotype==0 && param.openProductUrl=='1') || (infotype==1 && param.openArticleUrl=='1')){ window.open(url,'_blank'); }else{ window.location.href= url; } }else{ $LAB .script(relativeToAbsoluteURL("plugin/sitesearch/js/sitesearch_browser.js?v=1.11111150")) .wait(function(){ wp_sitesearch(url,{ title:langs['Search Result'], width: 730, top:60 }); }) } } }); dom.find('input[name="keywords"]').keydown(function(event){ if(event.keyCode==13){ dom.find('.sright').trigger('click'); } }); dom.find('.type_select span').unbind('click.searchspan').bind('click.searchspan',function(){ dom.find('.type_title').html($(this).html()); dom.find('.type_select').hide(); if($(this).html() ==langs['Search Pro']){ dom.find('.s_title').html(langs['Name']); dom.find('.s_description').html(langs['Description']); $(this).html(langs['Search Art']); dom.find("input[name='keywords']").autocomplete("option","source",[]); curseachtype='product'; getCacheType('product').done(function(arr){ if(curseachtype=='product') dom.find("input[name='keywords']").autocomplete("option","source",arr); }); }else{ dom.find('.s_title').html(langs['Search Title']); dom.find('.s_description').html(langs['Search Summary']); $(this).html(langs['Search Pro']); dom.find("input[name='keywords']").autocomplete("option","source",[]); curseachtype='article'; getCacheType('article').done(function(arr){ if(curseachtype=='article') dom.find("input[name='keywords']").autocomplete("option","source",arr); }); } }); dom.find('.nsearch').hover(function(){ dom.find('.type_select').show(); dom.find('input[name="keywords"]').autocomplete("close"); },function(){ dom.find('.type_select').hide(); }); var width_xz=0; if($.browser.msie && $.browser.version>=9){ width_xz=4;} var additionwidth=0; var funci=0; var func=function(){ if(dom.width()>dom.find('.sleft').outerWidth(true)||funci>=3){ var domFidType = $('#'+dom.attr('fatherid')).attr('type'); var domFidDly = $('#'+dom.attr('fatherid')+'_pop_up').css('display'); var domFidVsl = $('#'+dom.attr('fatherid')+'_pop_up').css('visibility'); if(param.editmode==1){ if(domFidType == 'pop_up' && domFidDly == 'none'){ $('#'+dom.attr('fatherid')+'_pop_up').css({'display':'block','visibility':'hidden'}); } }else{ $('#'+dom.attr('fatherid')+'_pop_up').css({'display':'block','visibility':'hidden'}); } if(dom.find('.sright2').length) additionwidth+=dom.find('.sright2').outerWidth(true); dom.find('.ninput').css({'width':(dom.width()-dom.find('.sleft').outerWidth(true)-dom.find('.sright').outerWidth(true)-additionwidth-dom.find('.nsearch').outerWidth(true)-width_xz)-4+'px'}); dom.find('.ninput input').width(dom.find('.ninput').width()); if(param.editmode==1){ if(domFidType == 'pop_up' && domFidDly == 'block' && domFidVsl == 'hidden'){ $('#'+dom.attr('fatherid')+'_pop_up').css({'display':'none','visibility':'visible'}); } }else{ $('#'+dom.attr('fatherid')+'_pop_up').css({'display':'none','visibility':'visible'}); } }else{ funci+=1; setTimeout(func,300); } } func(); //搜索按钮文字设置 if (vskin == 'default'||vskin == 'skin4'||vskin == 'skin7'||vskin == 'skin8' ) { var extcont = dom.data('extend_content'); var seatext = extcont.sitesearchbuttext; var pattern = /[\u4e00-\u9fa5]+/; if(typeof(seatext) != 'undefined'){ var sealent = seatext.length; $curlayer.find('.searchbox .bcenter').text(seatext); $curlayer.find('.searchbox .searchbox_btn').text(seatext); if(pattern.test(seatext)) { if(vskin == 'default') { var sealent1 = (sealent>2?10*(sealent-2)+(sealent-2):0); var width = $curlayer.find('.searchbox .ninput').css('width'); $curlayer.find('.searchbox .ninput').css({width:(parseInt(width)-sealent1)+'px'}); $curlayer.find('.searchbox input').css({width:(parseInt(width)-sealent1)+'px'}); } if(vskin == 'skin7') { var sealent1 = (sealent>3?10*(sealent-3)+1:0); var width = $curlayer.find('.searchbox input').css('width'); $curlayer.find('.searchbox input').css({width:(parseInt(width)-sealent1)+'px'}); var width = $curlayer.find('.searchbox .searchbox_btn').css('width'); $curlayer.find('.searchbox .searchbox_btn').css({width:(parseInt(width)+sealent1)+'px'}); } if(vskin == 'skin8') { var sealent1 = (sealent>3?10*(sealent-3)+1:0); var width = $curlayer.find('.searchbox .searchbox_btn').css('width'); $curlayer.find('.searchbox .searchbox_btn').css({width:(parseInt(width)+sealent1)+'px'}); } } } } } if(!param.editmode){ var autocomplete_width,autocomplete_date; if(vskin=='default' || vskin=='skin1' || vskin=='skin2' || vskin=='skin3'){ autocomplete_width = dom.find("input[name='keywords']").parent().outerWidth()+dom.find('.searchbox').children('.sleft').outerWidth()+dom.find('.nsearch').outerWidth() }else{autocomplete_width = dom.find('.searchbox_txt').parent().outerWidth() } var wp_searchdefalut =param.sshdefalutshow; if(wp_searchdefalut==1){ curseachtype='article'; }else{ curseachtype='product'; } dom.data('wp_searchcache',autocomplete_date); // 数据量超过一千会有明显卡顿,此处现取前一千来比对 by lsf 2015/01/15 dom.find("input[name='keywords']").autocomplete({ source:[], appendTo:dom, width:autocomplete_width, open:function(event,ui){ if(vskin == 'skin9'){ var contentWidth = dom.find('.showcontent').width(); var inputBorderWidth = parseInt(dom.find('.showcontent').css('border-width')); var contentHeight = dom.find('.showcontent').height()+2+inputBorderWidth; // 22是左右内边距之和 $('.ui-autocomplete').css( { 'width':contentWidth+22+inputBorderWidth*2+'px', 'left':-contentWidth-inputBorderWidth+'px', 'top':contentHeight+'px' } ); }else{ $('.ui-autocomplete').css('left','0'); } }, select:function(event,ui){ dom.find('.searchtype').prop('checked','false'); dom.find("input[value='title']").prop('checked',true); } }); dom.find("input[name='keywords']").one('focus',function(){ getCacheType(curseachtype).done(function(arr){ dom.find("input[name='keywords']").autocomplete("option","source",arr); }); }) } dom.data('interface_locale',getSiteCurLang()); //explain:修复bug(1601)搜索插件的输入框在浏览器器缩放时因其宽度问题导致后面的搜索按钮不在同一行显示,现在手动减去5px以解决该问题,author:fpf,date:2015-01-20,action:modify; 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; }; var devicePixelRatios = detectZoom(); var ischrome = navigator.userAgent.toLowerCase() || ''; if(devicePixelRatios != 100 && ischrome.match(/chrome/)){ var $search = dom.find('input.searchbox_txt'); var search_width = parseFloat($search.width()).toFixed(2); if(search_width && search_width > 5){$search.width(search_width - 5);} } }); } ; 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 ){ 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 exec=false; var func=function(){ if(!$('#scroll_container #'+layer_id+':visible').length){ $("#"+layer_id).unbind('more_button_event').bind('more_button_event',function(){ index=0; func(); }) if(index<=20){ setTimeout(func,500); index++; } return; } if(exec) return; $("#"+layer_id).unbind('more_button_event'); exec=true; 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','javascript:void(0);'); //点击"更多"弹出全站导航 if($("#"+layer_id).find('.nav1').attr('moreshow') == 1) { $(document).undelegate("#"+layer_id+" .nav_more_link",'click').delegate("#"+layer_id+" .nav_more_link",'click',function (e){ var func=function(){ $('#'+layer_id).find('#basic-modal-content_'+layer_id).modal({ containerId:'wp-new_navigation-simplemodal-container_'+layer_id, zIndex:9999, close:false, onOpen:function(dialog){ dialog.overlay.fadeIn('slow', function(){ dialog.container.slideDown('slow',function(){ dialog.data.fadeIn('slow','swing',function(){ $('.wp_menus').not('.wp_thirdmenu0').each(function(){ var left = $(this).parent().parent().children('a').eq(0).outerWidth()+5; $(this).css({position:'relative',left:left+'px'}); }); }); }); }); }, onClose:function(dialog){ dialog.data.fadeOut('slow',function (){ dialog.container.slideUp('slow', function () { dialog.overlay.fadeOut('slow', function () { $.modal.close(); }); }); }); } }); } if($('#'+layer_id).find('#basic-modal-content_'+layer_id).length){ func(); }else{ var morediv=$('#'+layer_id).find('.navigation_more'); var more_color=morediv.attr('data-more'); var typeval=morediv.attr('data-typeval'); var menudata=morediv.attr('data-menudata'); $.ajax({ type: "POST", url: parseToURL("new_navigation", "windowpopup"), data: {layer_id:layer_id,color:more_color,typeval:typeval,menudata:menudata}, success: function (response) { if (response == 'Session expired') window.location.href = getSessionExpiredUrl(); morediv.replaceWith(response); func(); }, error: function (xhr, textStatus, errorThrown) { wp_alert(xhr.readyState + ',' + xhr.status + ' - ' + (errorThrown || textStatus) + "(get nav).
" + translate("Request failed!")); return false; } }); } return false; }); } 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_heightAdapt_func(dom,params){ var wsize=params.wsize; if(params.unslideradapt!='1') return; if(!wsize || !wsize.width) return; if(params.editMode) return; var lastW=dom.data('lastW'); var winW=dom.find('.wp-unslider_content').width(); dom.data('lastW',winW); if(winW==lastW) return; var curH=dom.height(); var editH=parseInt(wsize.height) if(wsize.width>=winW && curH<=editH) return; var curH=editH; if(wsize.width right_boundray) return true; if(dom.attr('id') == $(this).attr('id')) return true;//自己除外 //包在高度自适应模块外面的模块也要改变高度 if((tmp_left <= left_boundray && tmp_left+tmp_width >= right_boundray) && (tmp_top <= moduleTop && tmp_top+tmp_height >= moduleTop+moduleLayerHeight)) { wrapList.push($(this).attr('id')); return true; } } if($(this).parent().hasClass('full_content') || $(this).parent().hasClass('footer_content') || $(this).parent().hasClass('drop_box')) return true;//通栏和底部元素暂时不考虑 if(tmp_top >= (moduleTop + moduleLayerHeight)) { pressList.push($(this).attr('id')); if(minTop == 0) {minTop = tmp_top;minId = $(this).attr('id');} else { if(minTop > tmp_top) {minTop = tmp_top;minId = $(this).attr('id');} } } }); //ceshi offsetY = $("#"+minId).ab_pos_cnter('top') - (moduleTop + moduleLayerHeight); if(pressList.length > 0 && (moduleTop + moduleHeight) >= minTop) { diffY = moduleTop + moduleHeight + offsetY - minTop; for(var i = 0;i < pressList.length;i++) { var theel=$("#"+pressList[i]); var eltop=parseInt(theel.ab_pos_cnter('top'))+diffY-sameTopDiff; theel.css('top',eltop+'px'); //bug 5996 自适应导致模块style变化了,动画出错 if(theel.data('wopop_effect_oristyle')){ var style=theel.data('wopop_effect_oristyle'); style=style.replace(/((?:^|;)\s*top\s*:\s*)\d+px;/,'$1'+eltop+'px;'); theel.data('wopop_effect_oristyle',style); } var pressArrOld=theel.data('adaptpress'); if(!pressArrOld) pressArrOld=[]; var pressArr=[]; for(var j=0;j 0) { for(var i = 0;i < wrapList.length;i++) { var diffH=moduleHeight-moduleLayerHeight; var theel=$("#"+wrapList[i]); theel.height($("#"+wrapList[i]).height()+(diffH)); var wrapListPadding = parseInt(layer_first_div(theel).css('padding-top')) + parseInt(layer_first_div($("#"+wrapList[i])).css('padding-bottom')); var wrapListBorder = parseInt(layer_first_div(theel).css('border-top-width')) + parseInt(layer_first_div($("#"+wrapList[i])).css('border-bottom-width')); layer_first_div(theel).height(theel.height() - wrapListPadding - wrapListBorder); var wrapArrOld=theel.data('adaptwrap'); if(!wrapArrOld) wrapArrOld=[]; var wrapArr=[]; for(var j=0;j= 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(); } } }; var getScrollbarWidth = function() { var odiv = document.createElement('div'), styles = { width: '100px',height: '100px',overflowY: 'scroll'}, i, scrollbarWidth; for (i in styles) odiv.style[i] = styles[i]; document.body.appendChild(odiv); scrollbarWidth = odiv.offsetWidth - odiv.clientWidth; odiv.remove(); return scrollbarWidth; } var btnFloat =function(data,layid){ $layid = $('#'+layid) var btf_right = data.float_right?data.float_right:1 var btf_bottom = data.float_bottom?data.float_bottom:1 if(data.float_enable=='show'){ var gscrollWidth = 18; gscrollWidth = getScrollbarWidth(); btf_right = parseInt(gscrollWidth) + parseInt(btf_right); $layid.hide() var effects=$layid.data('wopop_effects'); var noclass='cstlayer'; if(effects&&effects.effect){noclass=' ';} $layid.removeClass(noclass).appendTo('body').attr('style','') .css({"position":"fixed","right":btf_right+"px","z-index": "999","bottom":btf_bottom+"px"}).show() } } function layer_buttons_text_display_func(param){ var layerid=param.layerid; var bgFlag =param.bgFlag; var bhFlag =param.bhFlag; if(bgFlag){ $('#'+layerid).find('.wp-buttons_content a.btnarea ').find("span.button_btndefault-label").hide(); } $('#'+layerid).find('.wp-buttons_content a.btnarea').hover(function () { if(bhFlag){ $(this).find("span.button_btndefault-label").hide(); }else{ $(this).find("span.button_btndefault-label").show(); } },function () { if(bgFlag){ $(this).find("span.button_btndefault-label").hide(); }else{ $(this).find("span.button_btndefault-label").show(); } }); } ; (function(){ var fillcolor='#198ede'; var strcolor='#666'; var nw=150; var nh=100; var c; var cxt; var linepx=10; //默认边框 var shape_params; var zw=nw-(linepx/2.0); //减去边框后宽度 var zh=nh-(linepx/2.0); //减去边框后高度 var zx=linepx/2.0; //减去边框顶点位置 var Shapes={} /*矩形--*/ Shapes['rectan']=function() { cxt.save(); cxt.beginPath(); if(fillcolor!='transparent') cxt.fillStyle=fillcolor; cxt.strokeStyle=strcolor; if(linepx!=0) cxt.lineWidth = linepx; //边框大小 if(fillcolor!='transparent') cxt.fillRect(zx,zx,zw*2,zh*2); if(linepx!=0) cxt.strokeRect(zx,zx,zw*2,zh*2); if(fillcolor!='transparent') cxt.fill(); if(linepx!=0) cxt.stroke(); } /*圆形--*/ Shapes['circle']=function() { cxt.save(); var r = (zw > 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_article_list_checkid_func(params){ $(function(){ var layer_id = "#"+params.layer_id; $(layer_id+' .articleid:not(.memberoff)').unbind('click.list_check').bind('click.list_check',function(event){ event.preventDefault(); var gourl = $(this).attr('href'); var targettype = $(this).attr('target'); _this = $(this); $.ajax({ type: "POST", url: parseToURL('article_list','checkarticleid'), data: {id:$(this).attr('articleid')}, dataType: "json", async:false, success: function(r){ var islogin = params.islogin; if(r.code == -2 && !islogin){ //是会员 if(!islogin){ event.preventDefault(); $LAB .script(relativeToAbsoluteURL("script/datepicker/custom_dialog.js")) .wait(function(){ show_custom_panel(parseToURL('userlogin','login_dialog'),{ title:'Login', overlay:true, id:'wp_user_info' }); }); } return false; }else if(r.code == -1){ //不是会员 ismember = false; } if(targettype == undefined && gourl != 'javascript:void(0);'){ location.href=gourl; }else if(targettype != undefined && gourl != 'javascript:void(0);'){ window.open(gourl,'','',true); } } }) }) }) } function layer_article_list_init_func(param){ if(!getSystemSession()){ var $window=$(window); var layerid=param.layer_id; if($('#'+layerid).length&&$('#'+layerid).closest('#canvas,#site_footer').length){ // var $body = $('#scroll_container'); // var scrolTop = Math.max($(window).scrollTop(), $body.scrollTop()); } } var layerid=param.layer_id; var articleStyle=param.articleStyle; window['set_thumb_'+layerid]=function(obj) { var callback=function(img){ img.fadeIn('slow',function(){ img.closest('li').find('.imgloading').remove(); }); } $(obj).each(function() { var img=$(this); callback(img); }); } if(articleStyle=='two_column'){ $("#"+layerid).layer_ready(function(){ var $p = $('ul:first li p', "#"+layerid); $p.width('auto'); var maxW = Math.max.apply(Math, $p.map(function(){ return $(this).outerWidth(true); }).toArray()); $p.width(maxW); }); }else{ if (articleStyle === "skin3" || articleStyle === "ulist3") { $(function(){ var maxliheight = 0,tmplayerid = "#"+layerid; if (tmplayerid.length == 1) return;var $tmpnode = $(tmplayerid+' li > .wp-new-article-style-c'); maxliheight = Math.max.apply(null,$tmpnode.map(function(){return $(this).outerHeight();}).toArray()); if (maxliheight) $tmpnode.height(maxliheight); // 右间距 2014/03/17 $(tmplayerid).bind("fixedmarginright", function(e, margin){ var $target = $(this),$li = $target.find('li'); if(margin != undefined) $li.css("margin-right", margin+'px'); var $first = $li.filter(':first'),liwidth = $first.outerWidth(), mgnright = $._parseFloat($first.css("marginRight")), maxwidth = $target.children('.wp-article_list_content').width(), maxcols = Math.floor(maxwidth / (liwidth + mgnright)); if(maxwidth >= maxcols * (liwidth + mgnright) + liwidth) maxcols += 1; for(var i = 1,licnt = $li.length; i <= licnt; i++){ if (i % maxcols != 0) continue; if ((maxcols == 1) && (2*liwidth <= maxwidth)) continue; $li.filter(':eq('+(i - 1)+')').css("margin-right", '0'); } $li = null; }).triggerHandler("fixedmarginright"); // < .wp-new-article-style-01-left').outerWidth(true); $PL.find('li > .wp-new-article-style-01-right').css({"width": (MAXW - LW)+'px',"overflow": 'hidden',"word-wrap": 'break-word'}); //set li width var self=$(this);var leftwidth=self.find('.wp-new-article-style-01-left').outerWidth(); var rightwidth=self.find('.wp-new-article-style-01-right').outerWidth(); //设置时间日期容器的宽度,设置之后无法添加文章浏览量 if(articleStyle == "ylist2") $PL.find('li .time').parent('.tinubox').css({"width": (MAXW - LW)+'px'}); $PL = null; if(articleStyle != "ylist2") self.css('width',(leftwidth+rightwidth+350)+'px'); }) }).triggerHandler("fixedliwidth"); }); } } } function layer_article_list_animate_func(param){ var layerid=param.layer_id; var articleStyle=param.articleStyle; var support_animate=true; if(!support_animate) return; if($.inArray(articleStyle,['default','skin1','ylist2','skin4'])==-1){ return; } var layerobj=$('#'+layerid); var animatelis=layerobj.find('li'); var animateobj=[]; var index=0; animatelis.each(function(){ var li=$(this); animateobj.push({el:li,index:index,isStop:false}); index++; }) function startAnimate(obj){ if(obj.isStop) return; var el=obj.el;var index=obj.index; el.velocity({opacity: [1,0], translateY: [0,'100%'], translateZ: 0 }, {visibility:'visible',delay:index*100,duration: 1000}); obj.isStop=true; } function isLiInWindow(obj){ var el=obj.el; var eltop=el.offset().top; var elbottom=eltop+el.height(); var winH=$('#scroll_container').height(); return eltop>0 && eltop20 && elbottom-1){ e.preventDefault(); var pageid = page||$(this).attr("href").replace("###",''); if(param.editmode == "1") $.method.article_list.refreshArticleList({"page":pageid,"layerid":layerid}); else { var dom = $cstlayer.find('.article_list_save_itemList'), params = { }; var liststyle={"artliststyle":param.artliststyle} $.ajax({ type: "GET", url: parseToURL("article_list","get_page"), data: {article_category:param.article_category_param,layer_id: layerid,page: pageid,article_category_more:param.article_category_more}, success: function(data){ var $layer = $("#"+layerid); var oldHeight = $layer.find('.article_list-'+layerid).height(); $layer.children('.wp-article_list_content').hide().before(data).remove(); if(!ua.match(/chrome\/46/)){ var this_dom = $('#'+layerid); this_dom.find(".wp-pager_link").css({'position':'relative','bottom':'auto','width':'100%'}); if(!this_dom.data('not_need_heightadapt')) wp_heightAdapt($layer); var cheight = this_dom.find(".wp-article_content").height(); var oulheight = this_dom.find(".article_list-"+layerid).height(); var olkheight = this_dom.find(".wp-pager_link").outerHeight(); var fcontent = this_dom.find(".wp-article_list_content"); var botmag = parseInt(fcontent.css("border-bottom-width"))+parseInt(fcontent.css("padding-bottom")); if(cheight>oulheight+olkheight &&!$layer.data('not_need_heightadapt')){ this_dom.find(".wp-pager_link").css({'position':'absolute','bottom':botmag+'px','width':'100%'}) } /** * #修复“分页”后高度出现异常问题(bug#4316)2015/11/17 * #插件内容高度实际上没有问题,只因“分页”区域定位问题而导致的错觉 * bug(#4515)发现模块高度小于内容高度导致分页隐藏 */ var $C = $layer.children('.wp-article_list_content'),$W = $C.children('.article_list-'+layerid); var c_h = $C.height(),w_h = $W.height(); if(c_h-1){ $pglnker.find('a').triggerHandler('click',[Math.min(pgid,maxpg)]); }else{ urlhrf=urlhrf.replace(/\d+$/,Math.min(pgid,maxpg)) location.href=urlhrf; } } } } function _int(numString){ var number = parseInt(numString); if(isNaN(number)) return 0; return number; } return false; }; break; case "button": ent = 'click'; fnc = function(){ if (pgid.length && /^[1-9]{1}\d*$/.test(pgid)) { var maxpg = _int($pglnker.find('span.total').html()); if(!maxpg) maxpg = 1; var pagelink=$pglnker.find('a:first'); var urlhrf = pagelink.attr("href"); if(urlhrf.indexOf("##")>-1){ $pglnker.find('a').triggerHandler('click',[Math.min(pgid,maxpg)]); }else{ urlhrf=urlhrf.replace(/\d+$/,Math.min(pgid,maxpg)) location.href=urlhrf; } } function _int(numString){ var number = parseInt(numString); if(isNaN(number)) return 0; return number; } return false; }; break; } if(fnc && $.isFunction(fnc)) $input[ent](fnc); }); }); }; 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(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){ 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_article_category(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; if(plugin_name=='new_navigation'){ var page_id=$("#page_id").val(); }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){ $(this).addClass("lihover").children('a').addClass("ahover"); } if(window.location.href == $(this).find("a").attr("href") || window.location.href == $(this).find("a").attr("href")+"&brd=1"){ $(this).addClass("lihover").children('a').addClass("ahover"); } n++; }); // bug10217 if(!$('#nav_'+layer_id+'').children('li.lihover').length){ $('#nav_'+layer_id+' ul').children('li').each(function(){ var lochref=window.location.href.replace(/^https?:/,'').replace(/&brd=1$/,''); var subahref= $(this).find('a').attr("href").replace(/^https?:/,'').replace(/&brd=1$/,''); if(lochref == subahref || lochref ==subahref+"&brd=1"){ $(this).parents(".wp_subtop").addClass("lihover").children('a').addClass("ahover"); return; } }) } } function wp_addMoreButton(layer_id){ var layertype=$('#'+layer_id).attr('type'); if(layertype && window['wp_addMoreButton_'+layertype]){ return window['wp_addMoreButton_'+layertype](layer_id); } return false; } function wp_addMoreButton_article_category(layer_id) { var firstLiTop = 0; var hasMore = false; $('#nav_'+layer_id).children('li.wp_subtop').each(function(i){ if(i == 0) {firstLiTop = $(this).offset().top;return true;} if($(this).offset().top > firstLiTop) { $('#'+layer_id).data('hasMore','yes');//配置逻辑获取 var more = $.trim($('#'+layer_id).children('.wp-article_category_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'); } $(this).prev().nextAll().remove(); objA.next('ul').children('li').removeClass('wp_subtop'); hasMore = true; objA.attr('href','javascript:void(0);'); //点击"更多"弹出全站导航 if($("#"+layer_id).find('.nav1').attr('moreshow') == 1) { objA.click(function (e){ $('#'+layer_id).find('#basic-modal-content_'+layer_id).modal({ containerId:'wp-article_category-simplemodal-container_'+layer_id, zIndex:9999, close:false, onOpen:function(dialog){ dialog.overlay.fadeIn('slow', function(){ dialog.container.slideDown('slow',function(){ dialog.data.fadeIn('slow','swing',function(){ $('.wp_menus').not('.wp_thirdmenu0').each(function(){ var left = $(this).parent().parent().children('a').eq(0).outerWidth()+5; $(this).css({position:'relative',left:left+'px'}); }); }); }); }); }, onClose:function(dialog){ dialog.data.fadeOut('slow',function (){ dialog.container.slideUp('slow', function () { dialog.overlay.fadeOut('slow', function () { $.modal.close(); }); }); }); } }); return false; }); } return false; } }); if(!hasMore) $('#'+layer_id).data('hasMore','no'); wp_showdefaultHoverCss(layer_id); } //编辑模式水平拖动动态刷新修改More按钮 function wp_updateMoreButton(layer_id) { var $layer = $('#'+layer_id); var $nav1 = $layer.children('.wp-article_category_content').children('.nav1'); var tmp_css = $.trim($("#datastys_"+layer_id).text()); var tmp_cssa = $.trim($("#datasty_"+layer_id).text()); var param=$layer.get_mod_property(); $.post(parseToURL("article_category","refreshNavigator",{param:{oldparam:param},menustyle:$.trim($nav1.attr('skin')),saveCss:'yes',page_id:$("#page_id").val(),blockid:layer_id,typeval:$.trim($layer.find(".wp-article_category_content").attr('type')),colorstyle:$.trim($nav1.attr('colorstyle')),direction:$.trim($nav1.attr('direction')),more:$.trim($nav1.attr('more')),hover:$.trim($nav1.attr('hover')),moreshow:$.trim($nav1.attr('moreshow')),morecolor:$.trim($nav1.attr('morecolor'))}),function(data){ $layer.find('.wp-article_category_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 wp_get_navstyle(layer_id,key){ if(jeditMode){ var navStyle = $.trim($("#"+key+layer_id).text()); }else{ var navStyle = $.trim($("#"+layer_id).data(key)); } return navStyle; } ; function layer_article_category_hs7_func(params){ var layer_id = params.layer_id; var isedit = params.editmode; var menustyle = params.menustyle; var _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 if(typeval == 2){ var regex = "#nav_layer[0-9|a-z|A-Z]+\\s+ul\\s+li\\s*{\\s*"+css_pro+"\\s*:[^;]+"; }else if(typeval == 3){ var regex = "#nav_layer[0-9|a-z|A-Z]+\\s+ul\\s+li\\s*:\\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(isedit){ 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(isedit){ 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 if(typeval == 2){ var patt1 = new RegExp("#nav_layer[0-9|a-z|A-Z]+\\s+ul\\s+li\\s*{[^}]+}",'i'); }else if(typeval == 3){ var patt1 = new RegExp("#nav_layer[0-9|a-z|A-Z]+\\s+ul\\s+li\\s*:\\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)); }; setTimeout(function(){ wp_addMoreButton(layer_id); $(document).ready(function(){ $('#nav_'+layer_id).find('li').hover(function(){ if(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); } $(this).children('ul').show(); },function(){ $(this).children('ul').hide(); if(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'); } } }); }); $(document).ready(function(){ //子菜单位置设置 $(".menu_"+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).parent('ul').css('padding-right')) - parseInt($(this).parent('ul').css('padding-left')) - 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; }); $('#nav_'+layer_id).find('li').hover(function(){ if(!$(this).hasClass('wp_subtop')) { $(this).css('background-image',_getSubMenuHoverCss('background-image',3)); $(this).css('background-repeat',_getSubMenuHoverCss('background-repeat',3)); $(this).css('background-color',_getSubMenuHoverCss('background-color',3)); $(this).css('background-position',_getSubMenuHoverCss('background-position',3)); } if($(this).children('ul').length > 0) { $(this).children('ul').css('background-image',_getSubMenuHoverCss('background-image',2)); $(this).children('ul').css('background-repeat',_getSubMenuHoverCss('background-repeat',2)); $(this).children('ul').css('background-color',_getSubMenuHoverCss('background-color',2)); $(this).children('ul').css('background-position',_getSubMenuHoverCss('background-position',2)); $(this).children('ul').children('li').css({'background-image':'none','background-color':'transparent'}); } },function(){ if(!$(this).hasClass('wp_subtop')) $(this).css({'background-color':'transparent','background-image':'none'}); }); //第三级即下级菜单随高度增加位置动态修改 $(".menu_"+menustyle+" #nav_"+layer_id+" ul li").hover(function(){ if($(this).children('ul').length > 0) { $(this).children('ul').css('margin-top',-1 * ($(this).outerHeight() + parseInt($(this).parent().css('padding-top')))); } }); $('.menu_'+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':_getSubMenuHoverCss("font-family",0),'font-size':_getSubMenuHoverCss("font-size",0),'color':_getSubMenuHoverCss("color",0),'font-weight':_getSubMenuHoverCss("font-weight",0),'font-style':_getSubMenuHoverCss("font-style",0)}); }else{ if(direction==1){ $(this).children('ul').css('top','auto').css('bottom', -1*parseInt($('#nav_'+layer_id+' ul').css('padding-bottom')) + 'px'); }else{ $(this).children('ul').css('top',height+'px').css('bottom','auto'); } $(this).children('a').css({'font-family':_getSubMenuHoverCss("font-family",1),'font-size':_getSubMenuHoverCss("font-size",1),'color':_getSubMenuHoverCss("color",1),'font-weight':_getSubMenuHoverCss("font-weight",1),'font-style':_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); }); },50); }