//开头加;号是防止前一个js末行代码未加;结束 ;if(!window._addIvyID) document.write(' */ var pconline = { getId : function(objName){if(document.getElementById){return eval('document.getElementById("'+objName+'")')}else{return eval('document.all.'+objName)}}, addEvent : function(obj,eventType,func){if(obj.attachEvent){obj.attachEvent("on" + eventType,func);}else{obj.addEventListener(eventType,func,false)}}, delEvent : function(obj,eventType,func){ if(obj.detachEvent){obj.detachEvent("on" + eventType,func)}else{obj.removeEventListener(eventType,func,false)} } }; function LoginSelectClickOther(e){ thisObj = e.target?e.target:event.srcElement; do{ if(thisObj.id == "loginselect") return; if(thisObj.tagName == "BODY"){LoginSelectClose();return;}; thisObj = thisObj.parentNode; }while(thisObj.parentNode); }; function clickLoginSelect(){ if(pconline.getId("loginopt").style.display == "block"){ LoginSelectClose(); }else{ pconline.getId("loginopt").style.display = "block"; pconline.addEvent(document.body,"mousedown",LoginSelectClickOther); } }; function LoginSelectClose(){ pconline.getId("loginopt").style.display = "none"; pconline.delEvent(document.body,"mousedown",LoginSelectClickOther); }; function LoginSelect(title){ var titleName; switch(title){ case "pcclub": titleName = "PCclub"; document.loginform.direction.value="PCclub"; document.loginform.action="//passport2.pconline.com.cn/passport2/passport/login.jsp"; break; case "company": titleName = "商家"; document.loginform.direction.value="商家"; document.loginform.action="//eyp.pconline.com.cn/member/login.htm"; break; }; pconline.getId("loginselectdis").innerHTML = titleName; LoginSelectClose(); }; function ajaxLogon() { if(document.getElementById('ajaxLogon') == null) return; document.getElementById('ajaxLogon').innerHTML= //-----未登录 ''+ '
'+ ' '+ ' '+ ''+ //'
'+ //'选择去向'+ //''+ //'
'+ ' '+ '
'+ //-----已登录 '
'+( //* location.host.match(/pconline/)?'太平洋社区': location.host.match(/pcauto/)?'博客管理 ': location.host.match(/pcgames/)?'jClub管理': location.host.match(/pclady/)?'博客管理': location.host.match(/pckids/)?'博客管理': /**/ '')+'帐号管理 退出'+ '
' //以下是雅黑字体功能: ;//+''; var ajaxLogonHasYaHei = typeof dlgHelper!='object'; if(!ajaxLogonHasYaHei) for(var i = dlgHelper.fonts.count-1; i>0; i--) { if(dlgHelper.fonts(i) == '微软雅黑') { ajaxLogonHasYaHei = true; break; } } if(ajaxLogonHasYaHei) { //ajaxLogonYaHei(); /* document.getElementById('ajaxLogon').innerHTML+='  雅黑?'; */ } } ajaxLogon();//main function ajaxLogonYaHei(toggle) { var yahei = !!document.cookie.match(/(^|; )YaHei=/); if(toggle) { yahei = !yahei; jQuery.cookie('YaHei', '1', {expires:yahei?999:-1,path:'/',domain:location.hostname.replace(/^\w+/,'')}); } document.body.style.fontFamily = yahei ? '微软雅黑' : ''; try { if(window!=top) top.document.body.style.fontFamily = yahei ? '微软雅黑' : ''; } catch(e) {} } function ajaxLogonRefresh() { if(!document.cookie.match(/(^|; )common_session_id=[^;]+/) != !jQuery('#ajaxLogon>span:last:visible').length) jQuery('#ajaxLogon>span')//.toggle() 改成下面一行以绕开jquery1.3.2的toggle在这里失效的BUG .each(function(){var a=$(this); if(a.css('display')=='none') a.show(); else a.hide(); }); } function jQueryLoaded4Logon() { var $ = jQuery; $('#ajaxLogon form').append('') .submit(function(){ var usr = this['username'].value, pwd = this['password'].value; if(usr==''||pwd=='') { alert('请填写用户名和密码'); return false; } var direction = this['direction'].value; if(direction=='') { alert('请选择去向'); return false; } if(this.action.match(/member/)) return; //商家 $('input[type=submit]',this).css('opacity',.5).attr('disabled',true); this.target='pconline_login'; var win=window.open('','pconline_login','height=1, width=1, top=9999, left=0, toolbar=no, menubar=no, scrollbars=no,resizable=no,location=no, status=no'); window.focus(); var time=0; var fm = this; var checker = setInterval(function(){ if(time++ < 600 && !win.closed) return; clearInterval(checker); if(win.closed) { if(document.cookie.match(/(^|; )common_session_id=[^;]+/)) ajaxLogonRefresh(); else alert('登录失败! 请检查帐号和密码是否正确。'); } else { win.close(); alert('登录超时失败,请检查网络状况并再试一次。'); } $('input[type=submit]',fm).css('opacity',1).attr('disabled',false); },100); //$.getScript(this.action+(this.action.match(/\?/)?"&":"?")+"username=" +usr+"&password="+pwd, ajaxLogonRefresh); }); /**/ } setTimeout(function(){ if(typeof jQuery!='undefined') return jQueryLoaded4Logon(); var $_already_defined = typeof $ != 'undefined'; needJS(window.jQuery,'//www1.pconline.com.cn/js/pc.jquery1.3.js',function(){ if($_already_defined) $ = jQuery.noConflict(); jQueryLoaded4Logon(); }); },1000); //等1秒,先显示页面其它内容 function needJS(fn,src,callback) { if(typeof callback != 'function') return; //非法回调函数 if(typeof fn != 'undefined' && fn != null && fn != '') return callback(false); //功能早已载入 var scripts = window.__needJS__ || (window.__needJS__ = []); var script = scripts[src] || (scripts[src] = {loaded:false,callbacks:[]}); if(script.loaded) return callback(false); else script.callbacks.push(callback); if(script.callbacks.length == 1) { var js = document.createElement('script'); js.src = src; js.onreadystatechange = js.onload = function() { if(!js.readyState || js.readyState == 'loaded' || js.readyState == 'complete') { script.loaded = true; for(var i=0; i'+(typeof toc=="string"? toc.replace(/#increment/, i) : toc[i-1])+' ' } phtml=(nextprev[0]!=''? ' ' : '') + phtml + (nextprev[1]!=''? '' : '') pdiv.innerHTML=''+phtml+'' } var pdivlinks = [];//支持的触发 var pdivlink1=pdiv.getElementsByTagName("a"); var pdivlink2=pdiv.getElementsByTagName("I"); for(var i =0;isetting.contentdivs.length-1){ //if this toc link is out of range (user defined more toc links then there are contents) pdivlinks[i].style.display="none" //hide this toc link continue } pdivlinks[i].setAttribute("rel", ++toclinkscount) //store page number inside toc link pdivlinks[i][setting.revealtype]=function(){ var rel = this.getAttribute("rel"); if(self.delayTimer) window.clearTimeout(self.delayTimer); self.delayTimer = window.setTimeout(function(){featuredcontentslider.turnpage(setting, rel)},setting.delay); //事件延迟触发 return false; } setting.toclinks.push(pdivlinks[i]) } else if (this.css(pdivlinks[i], "prev", "check") || this.css(pdivlinks[i], "next", "check")){ //check for links with class "prev" or "next" pdivlinks[i].onclick=function(){ featuredcontentslider.turnpage(setting, this.className) return false } } } this.turnpage(setting, setting.currentpage, true) if (setting.autorotate[0]){ //当设置为自动轮换时,即 autorotate 为 true 时 pdiv[setting.revealtype]=function(){ return false } pdiv["onmouseover"]=function(){ featuredcontentslider.cleartimer(setting, window["fcsautorun"+setting.id])// onmouseover,停止自动轮换 return true } pdiv["onmouseout"]=function(){ featuredcontentslider.autorotate(setting)// onmouseout 后,继续自动轮换 return true } sliderdiv["onmouseover"]=function(){ featuredcontentslider.cleartimer(setting, window["fcsautorun"+setting.id]) return true } sliderdiv["onmouseout"]=function(){ featuredcontentslider.autorotate(setting) return true } setting.autorotate[1]=setting.autorotate[1]+(1/setting.enablefade[1]*80) //添加轮换停留时间 this.autorotate(setting) } }, urlparamselect:function(fcsid){ var result=window.location.search.match(new RegExp(fcsid+"=(\\d+)", "i")); //check for "?featuredcontentsliderid=2" in URL return (result==null)? null : parseInt(RegExp.$1); //returns null or index, where index (int) is the selected tab's index }, turnpage:function(setting, thepage, autocall){ var currentpage=setting.currentpage //定义当前 var totalpages=setting.contentdivs.length var turntopage=(/prev/i.test(thepage))? currentpage-1 : (/next/i.test(thepage))? currentpage+1 : parseInt(thepage) turntopage=(turntopage<1)? totalpages : (turntopage>totalpages)? 1 : turntopage //test for out of bound and adjust if (turntopage==setting.currentpage && typeof autocall=="undefined") //if a pagination link is clicked on repeatedly return setting.currentpage=turntopage setting.contentdivs[setting.prevpage-1].style.display="none" //collapse last content div shown (it was set to "block") setting.contentdivs[turntopage-1].style.zIndex=++setting.topzindex this.cleartimer(setting, window["fcsfade"+setting.id]) setting.cacheprevpage=setting.prevpage if (setting.enablefade[0]==true){ setting.curopacity=0 this.fadeup(setting) } if (setting.enablefade[0]==false){ //if fade is disabled, fire onChange event immediately (verus after fade is complete) setting.onChange(setting.prevpage, setting.currentpage) } setting.contentdivs[turntopage-1].style.visibility="visible" setting.contentdivs[turntopage-1].style.display="block" if (setting.prevpage<=setting.toclinks.length) //make sure pagination link exists (may not if manually defined via "markup", and user omitted) this.css(setting.toclinks[setting.prevpage-1], "selected", "remove") if (turntopage<=setting.toclinks.length) //make sure pagination link exists (may not if manually defined via "markup", and user omitted) this.css(setting.toclinks[turntopage-1], "selected", "add") setting.prevpage=turntopage if (this.enablepersist) this.setCookie("fcspersist"+setting.id, turntopage) }, setopacity:function(setting, value){ //赋予targetobject变量中的模块透明度,取值0-1之间 var targetobject=setting.contentdivs[setting.currentpage-1]; targetobject.className = "contentdiv sliderfilter";//解决纯黑色JPG背景图片出现白色亮点问题 if (targetobject.filters && targetobject.filters[0]){ //IE syntax if (typeof targetobject.filters[0].opacity=="number") //IE6 targetobject.filters[0].opacity=value*100; else //IE 5.5 targetobject.style.filter="alpha(opacity="+value*100+")"; } else if (typeof targetobject.style.MozOpacity!="undefined") //Old Mozilla syntax targetobject.style.MozOpacity=value; else if (typeof targetobject.style.opacity!="undefined") //Standard opacity syntax targetobject.style.opacity=value; setting.curopacity=value; }, fadeup:function(setting){ if (setting.curopacity<=0.95){ //当curopacity值小于或等于0.9时 this.setopacity(setting, setting.curopacity+setting.enablefade[1]) window["fcsfade"+setting.id]=setTimeout(function(){featuredcontentslider.fadeup(setting)}, 25) } else{ //当渐变已经完成,即 当curopacity值大于0.95时 this.setopacity(setting, 1); //(setting, setting.curopacity-setting.enablefade[1]); var targetobject=setting.contentdivs[setting.currentpage-1]; targetobject.className = "contentdiv"; if (setting.cacheprevpage!=setting.currentpage) //if previous content isn't the same as the current shown div (happens the first time the page loads/ script is run) setting.contentdivs[setting.cacheprevpage-1].style.display="none" //collapse last content div shown (it was set to "block") setting.onChange(setting.cacheprevpage, setting.currentpage) } }, cleartimer:function(setting, timervar){ if (typeof timervar!="undefined"){ clearTimeout(timervar); clearInterval(timervar); if (setting.cacheprevpage!=setting.currentpage){ //if previous content isn't the same as the current shown div setting.contentdivs[setting.cacheprevpage-1].style.display="none"; } } }, css:function(el, targetclass, action){ var needle=new RegExp("(^|\\s+)"+targetclass+"($|\\s+)", "ig"); if (action=="check") return needle.test(el.className); else if (action=="remove") el.className=el.className.replace(needle, ""); else if (action=="add") el.className+=" "+targetclass; }, autorotate:function(setting){ window["fcsautorun"+setting.id]=setInterval(function(){featuredcontentslider.turnpage(setting, "next")}, setting.autorotate[1]); }, getCookie:function(Name){ var re=new RegExp(Name+"=[^;]+", "i"); //construct RE to search for target name/value pair if (document.cookie.match(re)) //if cookie found return document.cookie.match(re)[0].split("=")[1]; //return its value return null; }, setCookie:function(name, value){ document.cookie = name+"="+value; }, iframeconnect:function(setting){ //增加iframe处理事件,支持iframe的轮换,但iframe与div的相互组合目前不能完成,即轮换内容既有iframe的内容又有div的内容的时候 var ifr = document.createElement('iframe'); ifr.id='iframeconnect'+new Date().getTime(); ifr.style.display='none'; var self = this; var got = function(){ var d = ifr.contentDocument ? ifr.contentDocument : document.frames[ifr.id].document; document.getElementById(setting.id).innerHTML=d.body.innerHTML; document.body.removeChild(ifr); self.buildpaginate(setting); }; ifr.onload=got; ifr.onreadystatechange=function(){ if(this.readyState=='complete') got(); }; ifr.src = setting.contentsource[1]; document.body.insertBefore(ifr,document.body.firstChild); }, init:function(setting){ if(document.getElementById(setting.id)==null) return; //防止延迟载入js时焦点区因独占广告而删除 var persistedpage=this.getCookie("fcspersist"+setting.id) || 1; var urlselectedpage=this.urlparamselect(setting.id); //returns null or index from: mypage.htm?featuredcontentsliderid=index this.settingcaches[setting.id]=setting; //存储 "setting" 对象 setting.contentdivs=[]; setting.toclinks=[]; setting.topzindex=0; setting.currentpage=urlselectedpage || setting.playtab || ((this.enablepersist)? persistedpage : 1);//默认显示模块 url参数 优先于 设定playtab 优先于 cookie值 setting.prevpage=setting.currentpage; setting.revealtype="on"+(setting.revealtype || "click"); setting.curopacity=0; setting.onChange=setting.onChange || function(){}; if (setting.contentsource[0]=="inline")//直接页面调用div this.buildpaginate(setting); if (setting.contentsource[0]=="ajax")//调用外部utf-8页面内容 this.ajaxconnect(setting); if (setting.contentsource[0]=="iframe")//调用外部页面内容,主要以iframe形式获取,获取iframe内标签,主要解决非utf-8的内容 this.iframeconnect(setting); } } ;function siteLinksSelector(site,siteLinks){ var THIS = this; this.site = document.getElementById(site); this.siteLinks = document.getElementById(siteLinks); this.site.onclick = function(){ if(THIS.siteLinks.style.display=='none'){ THIS.siteLinks.style.display='block'; THIS.site.className='tag_select_open' }else{ THIS.siteLinks.style.display='none'; THIS.site.className='tag_select' } } this.siteLinks.onmouseout = function(){ THIS.siteLinks.style.display='none'; THIS.site.className='tag_select' } this.siteLinks.onmouseover = function(){ THIS.siteLinks.style.display='block'; THIS.site.className='tag_select_open' } } ;// init:("anchorID", "positionString", glideduration, "revealBehavior") // 位置:("left-bottom", "right-bottom", "left-top", or "right-top") var dropdowncontent = { disableanchorlink : false, // 设置是否click产生链接 true为不产生链接 hidedivmouseout : [true, 200], // 设置激发产生的层显示的默认时间:[hide_div_onmouseover // ?miliseconds_before_hiding] ajaxloadingmsg : "请稍候…", // ajax页面的时候的载入文字 ajaxbustcache : false, // 是否缓存 getposOffset : function(what, offsettype) { return (what.offsetParent) ? what[offsettype] + this.getposOffset(what.offsetParent, offsettype) : what[offsettype] }, isContained : function(m, e) { var e = window.event || e var c = e.relatedTarget || ((e.type == "mouseover") ? e.fromElement : e.toElement) while (c && c != m) try { c = c.parentNode } catch (e) { c = m } if (c == m) return true else return false }, show : function(anchorobj, subobj, e) { if (!this.isContained(anchorobj, e) || (e && e.type == "click")) { var e = window.event || e if (e.type == "click" && subobj.style.visibility == "visible") { subobj.style.visibility = "hidden" return } var horizontaloffset = (subobj.dropposition[0] == "left") ? -(subobj.offsetWidth - anchorobj.offsetWidth) : 0 // calculate user added horizontal offset var verticaloffset = (subobj.dropposition[1] == "top") ? -subobj.offsetHeight : anchorobj.offsetHeight // calculate user added vertical // offset subobj.style.left = this.getposOffset(anchorobj, "offsetLeft") + horizontaloffset + "px" subobj.style.top = this.getposOffset(anchorobj, "offsetTop") + verticaloffset + "px" subobj.style.clip = (subobj.dropposition[1] == "top") ? "rect(auto auto auto 0)" : "rect(0 auto 0 0)" // hide drop down box initially via // clipping subobj.style.visibility = "visible" subobj.startTime = new Date().getTime() subobj.contentheight = parseInt(subobj.offsetHeight) if (typeof window["hidetimer_" + subobj.id] != "undefined") // clear // timer // that // hides // drop // down // box? clearTimeout(window["hidetimer_" + subobj.id]) this.slideengine(subobj, (subobj.dropposition[1] == "top") ? "up" : "down") } }, show_no_drop : function(anchorobj, subobj, e) { if (!this.isContained(anchorobj, e) || (e && e.type == "click")) { var e = window.event || e if (e.type == "click" && subobj.style.visibility == "visible") { subobj.style.visibility = "hidden" return } var horizontaloffset = (subobj.dropposition[0] == "left") ? -(subobj.offsetWidth - anchorobj.offsetWidth) : 0 // calculate user added horizontal offset var verticaloffset = (subobj.dropposition[1] == "top") ? -subobj.offsetHeight : anchorobj.offsetHeight // calculate user added vertical // offset subobj.style.left = this.getposOffset(anchorobj, "offsetLeft") + horizontaloffset + "px" subobj.style.top = this.getposOffset(anchorobj, "offsetTop") + verticaloffset + "px" subobj.style.visibility = "visible" subobj.contentheight = parseInt(subobj.offsetHeight) } }, curveincrement : function(percent) { return (1 - Math.cos(percent * Math.PI)) / 2 // return cos curve // based value from a // percentage input }, slideengine : function(obj, direction) { var elapsed = new Date().getTime() - obj.startTime // get time // animation has run if (elapsed < obj.glidetime) { // if time run is less than specified // length var distancepercent = (direction == "down") ? this .curveincrement(elapsed / obj.glidetime) : 1 - this.curveincrement(elapsed / obj.glidetime) var currentclip = (distancepercent * obj.contentheight) + "px" obj.style.clip = (direction == "down") ? "rect(0 auto " + currentclip + " 0)" : "rect(" + currentclip + " auto auto 0)" window["glidetimer_" + obj.id] = setTimeout(function() { dropdowncontent.slideengine(obj, direction) }, 10) } else { // if animation finished obj.style.clip = "rect(0 auto auto 0)" } }, hide : function(activeobj, subobj, e) { if (!dropdowncontent.isContained(activeobj, e)) { window["hidetimer_" + subobj.id] = setTimeout(function() { subobj.style.visibility = "hidden" subobj.style.left = subobj.style.top = 0 clearTimeout(window["glidetimer_" + subobj.id]) }, dropdowncontent.hidedivmouseout[1]) } }, hidediv : function(subobjid) { document.getElementById(subobjid).style.visibility = "hidden" }, ajaxconnect : function(pageurl, divId) { var page_request = false var bustcacheparameter = "" if (window.XMLHttpRequest) // if Mozilla, IE7, Safari etc page_request = new XMLHttpRequest() else if (window.ActiveXObject) { // if IE6 or below try { page_request = new ActiveXObject("Msxml2.XMLHTTP") } catch (e) { try { page_request = new ActiveXObject("Microsoft.XMLHTTP") } catch (e) { } } } else return false document.getElementById(divId).innerHTML = this.ajaxloadingmsg // Display // "fetching // page // message" page_request.onreadystatechange = function() { dropdowncontent.loadpage(page_request, divId) } if (this.ajaxbustcache) // if bust caching of external page bustcacheparameter = (pageurl.indexOf("?") != -1) ? "&" + new Date().getTime() : "?" + new Date().getTime() page_request.open('GET', pageurl + bustcacheparameter, true) page_request.send(null) }, loadpage : function(page_request, divId) { if (page_request.readyState == 4 && (page_request.status == 200 || window.location.href .indexOf("http") == -1)) { document.getElementById(divId).innerHTML = page_request.responseText } }, init : function(anchorid, pos, glidetime, revealbehavior, show_type) { var anchorobj = document.getElementById(anchorid) var subobj = document.getElementById(anchorobj.getAttribute("rel")) var subobjsource = anchorobj.getAttribute("rev") if (subobjsource != null && subobjsource != "") this.ajaxconnect(subobjsource, anchorobj.getAttribute("rel")) subobj.dropposition = pos.split("-") subobj.glidetime = glidetime || 1000 subobj.style.left = subobj.style.top = 0 if (show_type && show_type == "show_yes_drop") { if (typeof revealbehavior == "undefined" || revealbehavior == "mouseover") { anchorobj.onmouseover = function(e) { dropdowncontent.show(this, subobj, e) } anchorobj.onmouseout = function(e) { dropdowncontent.hide(subobj, subobj, e) } if (this.disableanchorlink) anchorobj.onclick = function() { return false } } else anchorobj.onclick = function(e) { dropdowncontent.show(this, subobj, e); return false } } else { if (typeof revealbehavior == "undefined" || revealbehavior == "mouseover") { anchorobj.onmouseover = function(e) { dropdowncontent.show_no_drop(this, subobj, e) } anchorobj.onmouseout = function(e) { dropdowncontent.hide(subobj, subobj, e) } if (this.disableanchorlink) anchorobj.onclick = function() { return false } } else anchorobj.onclick = function(e) { dropdowncontent.show_no_drop(this, subobj, e); return false } } if (this.hidedivmouseout[0] == true) // hide drop down DIV when mouse // rolls out of it? subobj.onmouseout = function(e) { dropdowncontent.hide(this, subobj, e) } } }