⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 typecho-ui.source.js

📁 这是一个开源的博客源码
💻 JS
📖 第 1 页 / 共 2 页
字号:
var Typecho={};Typecho.guid=function(c,d){var b=$(c);var h=b.getElements("dt");var f=b.getElements("dd");var a=null,e=null,j=null;var g={reSet:function(){h.removeClass("current");f.setStyle("display","none")},popUp:function(l){l=a=$(l)||l;l.addClass("current");var k=l.getNext("dd");if(k){k.setStyle("left",l.getPosition().x-l.getParent("dl").getPosition().x-d.offset);if(k.getStyle("display")!="none"){k.setStyle("display","none")}else{k.setStyle("display","block");k.getElement("ul li:first-child").setStyle("border-top","none");k.getElement("ul li:last-child").setStyle("border-bottom","none");k.getElements("ul li").setStyle("width",k.getCoordinates().width-22)}}}};if(d.type=="mouse"){h.addEvent("mouseenter",function(k){e=$clear(e);g.reSet();if(k.target.nodeName.toLowerCase()=="a"){k.target=$(k.target).getParent("dt")}g.popUp(k.target)});h.addEvent("mouseout",function(k){if(!e){e=g.reSet.delay(500)}});f.addEvent("mouseenter",function(k){if(e){e=$clear(e)}});f.addEvent("mouseleave",function(k){if(!e){e=g.reSet.delay(50)}})}if(d.type=="click"){h.addEvent("click",function(k){g.reSet();if(k.target.nodeName.toLowerCase()=="a"){k.target=$(k.target).getParent("dt")}g.popUp(k.target);k.stop()});$(document).addEvent("click",g.reSet)}return g};Typecho.Table={table:null,draggable:false,draggedEl:null,draggedFired:false,init:function(a){$(document).getElements(a).each(function(b){Typecho.Table.table=b;Typecho.Table.draggable=b.hasClass("draggable");Typecho.Table.bindButtons();Typecho.Table.reset()})},reset:function(){var c=Typecho.Table.table;Typecho.Table.draggedEl=null;if("undefined"==typeof(c._childTag)){switch(c.get("tag")){case"ul":c._childTag="li";break;case"table":c._childTag="tr";break;default:break}var b=c.getElements(c._childTag+" input[type=checkbox]").each(function(d){d._parent=d.getParent(Typecho.Table.table._childTag);d.addEvent("click",Typecho.Table.checkBoxClick)})}var a=c.getElements(c._childTag+".even").length>0;c.getElements(c._childTag).filter(function(e,d){return"tr"!=e.get("tag")||0==e.getChildren("th").length}).each(function(e,d){if(a){if(d%2){e.removeClass("even")}else{e.addClass("even")}if(e.hasClass("checked")||e.hasClass("checked-even")){e.removeClass(d%2?"checked-even":"checked").addClass(d%2?"checked":"checked-even")}}Typecho.Table.bindEvents(e)})},checkBoxClick:function(a){var b=$(this);if(b.getProperty("checked")){b.setProperty("checked",false);b._parent.removeClass(b._parent.hasClass("even")?"checked-even":"checked");Typecho.Table.unchecked(this,b._parent)}else{b.setProperty("checked",true);b._parent.addClass(b._parent.hasClass("even")?"checked-even":"checked");Typecho.Table.checked(this,b._parent)}},itemMouseOver:function(a){if(!Typecho.Table.draggedEl||Typecho.Table.draggedEl==this){$(this).addClass("hover");if(Browser.Engine.trident){$(this).getElements(".hidden-by-mouse").setStyle("display","inline")}}},itemMouseLeave:function(a){if(!Typecho.Table.draggedEl||Typecho.Table.draggedEl==this){$(this).removeClass("hover");if(Browser.Engine.trident){$(this).getElements(".hidden-by-mouse").setStyle("display","none")}}},itemClick:function(a){var b;if(b=$(this).getElement("input[type=checkbox]")){b.fireEvent("click")}},itemMouseDown:function(a){if(!Typecho.Table.draggedEl){Typecho.Table.draggedEl=this;Typecho.Table.draggedFired=false;return false}},itemMouseMove:function(a){if(Typecho.Table.draggedEl){if(!Typecho.Table.draggedFired){Typecho.Table.dragStart(this);$(this).setStyle("cursor","move");Typecho.Table.draggedFired=true}if(Typecho.Table.draggedEl!=this){if($(this).getCoordinates(Typecho.Table.draggedEl).top<0){$(this).inject(Typecho.Table.draggedEl,"after")}else{$(this).inject(Typecho.Table.draggedEl,"before")}if($(this).hasClass("even")){if(!$(Typecho.Table.draggedEl).hasClass("even")){$(this).removeClass("even");$(Typecho.Table.draggedEl).addClass("even")}if($(this).hasClass("checked-even")&&!$(Typecho.Table.draggedEl).hasClass("checked-even")){$(this).removeClass("checked-even");$(Typecho.Table.draggedEl).addClass("checked-even")}}else{if($(Typecho.Table.draggedEl).hasClass("even")){$(this).addClass("even");$(Typecho.Table.draggedEl).removeClass("even")}if($(this).hasClass("checked")&&$(Typecho.Table.draggedEl).hasClass("checked")){$(this).removeClass("checked");$(Typecho.Table.draggedEl).addClass("checked")}}return false}}},itemMouseUp:function(d){if(Typecho.Table.draggedEl){var c=Typecho.Table.table.getElements(Typecho.Table.table._childTag+" input[type=checkbox]");var a="";for(var b=0;b<c.length;b++){if(a.length>0){a+="&"}a+=c[b].name+"="+c[b].value}if(Typecho.Table.draggedFired){$(this).fireEvent("click");$(this).setStyle("cursor","");Typecho.Table.dragStop(this,a);Typecho.Table.draggedFired=false;Typecho.Table.reset()}Typecho.Table.draggedEl=null;return false}},checked:function(a,b){return false},unchecked:function(a,b){return false},dragStart:function(a){return false},dragStop:function(b,a){return false},bindButtons:function(){$(document).getElements(".typecho-table-select-all").addEvent("click",function(){Typecho.Table.table.getElements(Typecho.Table.table._childTag+" input[type=checkbox]").each(function(a){if(!a.getProperty("checked")){a.fireEvent("click")}})});$(document).getElements(".typecho-table-select-none").addEvent("click",function(){Typecho.Table.table.getElements(Typecho.Table.table._childTag+" input[type=checkbox]").each(function(a){if(a.getProperty("checked")){a.fireEvent("click")}})});$(document).getElements(".typecho-table-select-submit").addEvent("click",function(){var b=this.get("lang");var a=b?confirm(b):true;if(a){var c=Typecho.Table.table.getParent("form");c.getElement("input[name=do]").set("value",$(this).getProperty("rel"));c.submit()}})},bindEvents:function(a){a.removeEvents();a.addEvents({mouseover:Typecho.Table.itemMouseOver,mouseleave:Typecho.Table.itemMouseLeave,click:Typecho.Table.itemClick});if(Typecho.Table.draggable&&Typecho.Table.table.getElements(Typecho.Table.table._childTag+" input[type=checkbox]").length>0){a.addEvents({mousedown:Typecho.Table.itemMouseDown,mousemove:Typecho.Table.itemMouseMove,mouseup:Typecho.Table.itemMouseUp})}}};Typecho.tinyMCE=function(c,a,m,h,k){var f=parseInt($(c).getStyle("height")),d;var g=function(){var o=new Request({method:"post",url:a}).send("content="+encodeURIComponent(d.getContent())+"&do=removeParagraph");o.addEvent("onSuccess",function(p){$(c).set("value",p);$(c).removeProperty("disabled")})};var n=function(){$("typecho-editor-tab-cw").addClass("loading");var o=new Request({method:"post",url:a}).send("content="+encodeURIComponent(d.getContent())+"&do=removeParagraph");o.addEvent("onSuccess",function(p){$(c).set("value",p);$("typecho-editor-tab-cw").removeClass("loading");$(c+"_parent").setStyle("display","none");$(c).setStyle("display","block")})};var l=function(){$("typecho-editor-tab-vw").addClass("loading");var o=new Request({method:"post",url:a}).send("content="+encodeURIComponent($(c).get("value"))+"&do=cutParagraph");o.addEvent("onSuccess",function(p){d.setContent(p);$("typecho-editor-tab-vw").removeClass("loading");$(c+"_parent").setStyle("display","block");$(c).setStyle("display","none")})};var j=function(){if("cw"==k){$(c+"_parent").setStyle("display","")}else{$(c).setStyle("display","")}};var e=function(){if("cw"==k){$(c+"_parent").setStyle("display","none")}else{$(c).setStyle("display","none")}};var b=function(){var o=this;if("vw"==k){var p=new Request({method:"post",url:a}).send("content="+encodeURIComponent(d.getContent())+"&do=removeParagraph");p.addEvent("onSuccess",function(q){$(c).set("value",q);o.submit()})}else{o.submit()}};$(c).getParent("form").addEvent("save",b);$(c).getParent("form").addEvent("post",b);tinyMCE.init({mode:"exact",elements:c,theme:"advanced",skin:"typecho",plugins:"safari,morebreak,inlinepopups,media,coder",extended_valid_elements:"code[*],pre[*],script[*],iframe[*]",setup:function(p){var q=new Element("ul",{"class":"typecho-editor-tab"}).grab(new Element("li",{text:m,id:"typecho-editor-tab-vw",events:{click:function(){if(k=="cw"){$(this).addClass("current");$("typecho-editor-tab-cw").removeClass("current");k="vw";l()}}}})).grab(new Element("li",{text:h,id:"typecho-editor-tab-cw",events:{click:function(){if(k=="vw"){$(this).addClass("current");$("typecho-editor-tab-vw").removeClass("current");k="cw";n()}}}})).setStyle("width",$(c).getSize().x).inject(c,"before");var o=$(document).getElement("label[for="+c+"]");if(o){o.setStyles({"float":"left",position:"absolute"});if(Browser.Engine.webkit){o.setStyle("padding-top",7)}}$("typecho-editor-tab-"+k).addClass("current");p.onInit.add(function(w){var u=false;var y=0,x=0,t=0,r=0,v=0;d=w;g();var s=new Element("div",{styles:{border:"1px dashed #C1CD94",background:"#fff",display:"none",width:$(c+"_tbl").getSize().x-2,height:$(c+"_tbl").getSize().y-2}}).inject(c+"_parent","after");var z=new Element("span",{"class":"size-btn",events:{mousedown:function(A){j();if(0==r){r=$(c+"_tbl").getSize().y-f}if(0==v){v=$(c+"_ifr").getPosition($(c+"_tbl")).y}if(!u){s.setStyle("height",("vw"==k?$(c+"_tbl").getSize().y:$(c).getSize().y)-2)}e();u=true;if("vw"==k){$(c+"_tbl").setStyle("display","none")}else{$(c).setStyle("display","none")}s.setStyle("display","block");A.stop()}}}).inject(s,"after");$(document).addEvents({mouseup:function(C){if(u){u=false;if("vw"==k){$(c+"_tbl").setStyle("display","")}else{$(c).setStyle("display","")}j();var B=$(c+"_tbl").getSize().y-$(c+"_ifr").getSize().y;var A=s.getSize().y-r;$(c).setStyle("height",s.getSize().y-8);$(c+"_tbl").setStyle("height",s.getSize().y);$(c+"_ifr").setStyle("height",s.getSize().y-B);e();var D=new Request({method:"post",url:a}).send("size="+A+"&do=editorResize");s.setStyle("display","none");x=0;y=0;t=0}},mousemove:function(A){if(u){t=A.page.y}}});setInterval(function(){if(u){y=(0==x)?0:t-x;x=t;var A=s.getSize().y-2+y;if(A>v){s.setStyle("height",A)}}},10);if("cw"==k){$(c+"_parent").setStyle("display","none");$(c).setStyle("display","block")}j();$(c).setStyle("height",$(c).getSize().y+(Browser.Engine.trident?-1:3));e()})},save_callback:function(p,q,o){return $(c).get("value")},theme_advanced_buttons1:"bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,bullist,numlist,blockquote,|,link,unlink,image,media,|,forecolor,backcolor,|,morebreak",theme_advanced_buttons2:"",theme_advanced_buttons3:"",theme_advanced_toolbar_location:"top",theme_advanced_toolbar_align:"left",convert_urls:false,language:"typecho"})};Typecho.message=function(b){var a=$(document).getElement(b);setTimeout(function(){if(a){var c=new Fx.Morph(a,{duration:"short",transition:Fx.Transitions.Sine.easeOut});c.addEvent("complete",function(){this.element.style.display="none"});c.start({"margin-top":[30,0],height:[21,0],opacity:[1,0]})}},5000)};Typecho.openLink=function(b,a){$(document).getElements("a").each(function(d){var c=d.href;if(c&&"#"!=c){$(d).addEvent("click",function(f){var g=this.get("lang");var e=g?confirm(g):true;if(!e){f.stop()}});if(b.exec(c)||a.exec(c)){return}$(d).addEvent("click",function(){window.open(this.href);return false})}})};Typecho.date=function(d,l,t,o,j,n,s){var m=new Date(l,t-1,o,j,n,s);$(d).setStyle("display","none");var p,c,h,e,k,r;var q=function(w,y){var x=w+"",v=y-x.length;if(v>0){for(i=0;i<v;i++){x="0"+x}}return x};var g=function(v){return parseInt(v.replace(/^0+([1-9]*)$/,"$1"))};var b=function(){var w=new Date(g(p.get("value")),g(c.get("value"))-1,g(h.get("value")),g(e.get("value")),g(k.get("value")),0);var v=w.toString().replace("GMT","").split(" ");$(d).set("value",v[0]+", "+v[2]+" "+v[1]+" "+v[3]+" "+v[4]+" "+v[5])};var a=function(v){if(-1==v.key.search(/[0-9]/)){v.stop();return false}};var f=function(){this.select()};var u=new Element("span",{"class":"out-date"}).grab(p=new Element("input",{id:"year",name:"year",type:"text",maxlength:4,value:q(l,4),events:{keyup:b,keydown:a,focus:f}})).appendText("/").grab(c=new Element("input",{id:"month",name:"month",type:"text",maxlength:2,value:q(t,2),events:{keyup:b,keydown:a,focus:f}})).appendText("/").grab(h=new Element("input",{id:"day",name:"day",type:"text",maxlength:2,value:q(o,2),events:{keyup:b,keydown:a,focus:f}})).appendText("@").grab(e=new Element("input",{id:"hour",name:"hour",type:"text",maxlength:2,value:q(j,2),events:{keyup:b,keydown:a,focus:f}})).appendText(":").grab(k=new Element("input",{id:"min",name:"min",type:"text",maxlength:2,value:q(n,2),events:{keyup:b,keydown:a,focus:f}})).inject($(d),"before")};Typecho.scroll=function(b,a){var d=$(document).getElement(b);if(d){var c=new Fx.Scroll(window).toElement(d.getParent(a))}};Typecho.location=function(a){setTimeout('window.location.href="'+a+'"',0)};Typecho.toggle=function(e,c,b,a){var d=$(document).getElement(e);$(c).toggleClass("close");if("none"==d.getStyle("display")){$(c).set("html",b);d.setStyle("display","block")}else{$(c).set("html",a);d.setStyle("display","none")}};Typecho.highlight=function(a){if(a){var b=$(a);if(b){b.set("tween",{duration:1500});var c=b.getStyle("background-color");if(!c||"transparent"==c){c="#F7FBE9"}b.tween("background-color","#AACB36",c)}}};Typecho.autoDisableSubmit=function(){$(document).getElements("input[type=submit]").removeProperty("disabled");$(document).getElements("button[type=submit]").removeProperty("disabled");var a=function(b){b.stopPropagation();$(this).setProperty("disabled",true);$(this).getParent("form").submit();return false};$(document).getElements("input[type=submit]").addEvent("click",a);$(document).getElements("button[type=submit]").addEvent("click",a)};Element.implement({getSelectedRange:function(){if(!Browser.Engine.trident){return{start:this.selectionStart,end:this.selectionEnd}}var e={start:0,end:0};var a=this.getDocument().selection.createRange();if(!a||a.parentElement()!=this){return e}var c=a.duplicate();if(this.type=="text"){e.start=0-c.moveStart("character",-100000);e.end=e.start+a.text.length}else{var b=this.value;var d=b.length-b.match(/[\n\r]*$/)[0].length;c.moveToElementText(this);c.setEndPoint("StartToEnd",a);e.end=d-c.text.length;c.setEndPoint("StartToStart",a);e.start=d-c.text.length}return e},selectRange:function(d,a){if(Browser.Engine.trident){var c=this.value.substr(d,a-d).replace(/\r/g,"").length;d=this.value.substr(0,d).replace(/\r/g,"").length;var b=this.createTextRange();b.collapse(true);b.moveEnd("character",d+c);b.moveStart("character",d);b.select()}else{this.focus();this.setSelectionRange(d,a)}return this}});Typecho.autoComplete=function(l,j){var p=",",o,c=-1,g=false,q=$(document).getElement(l).setProperty("autocomplete","off");var a=function(){var s=0,t=q.get("value");o=[];if(t.length>0){t.split(p).each(function(x,v){var u=s+x.length,w=0,y=0;x=x.replace(/(\s*)(.*)(\s*)/,function(B,A,z,C){w=A.length;y=C.length;return z});o[v]={txt:x,start:v*1+s,end:v*1+u,offsetStart:v*1+s+w,offsetEnd:v*1+u-y};s=u})}};var k=function(t,u){return u?u.txt.substr(0,t-u.offsetStart):""};var n=function(s){var u=s.length>0?j.filter(function(v){return 0==v.indexOf(s)}):[];var t=s.length>0?j.filter(function(v){return(0==v.toLowerCase().indexOf(s.toLowerCase())&&!u.contains(v))}):[];return u.extend(t)};var f=function(t,u){q.selectRange(u.offsetStart>t?u.offsetStart:t,u.offsetEnd)};var r=function(u){for(var t in o){if(u>=o[t].start&&u<=o[t].end){return o[t]}}return false};var b=function(t,u,v){var x=q.get("value");return q.set("value",x.substr(0,u)+t+x.substr(v))};var m=function(s,t){c=-1;g=false;var u=new Element("ul",{"class":"autocompleter-choices",styles:{width:q.getSize().x-2,left:q.getPosition().x,top:q.getPosition().y+q.getSize().y}});t.each(function(w,v){u.grab(new Element("li",{rel:v,html:'<span class="autocompleter-queried">'+w.substr(0,s.length)+"</span>"+w.substr(s.length),events:{mouseover:function(){g=true;this.addClass("autocompleter-hover")},mouseleave:function(){g=false;this.removeClass("autocompleter-hover")},click:function(){var z=parseInt(this.get("rel"));var y=q.getSelectedRange().start,x=r(y);b(t[z],x.offsetStart,x.offsetEnd);a();x=r(y);q.selectRange(x.offsetEnd,x.offsetEnd);e()}}}))});$(document).getElement("body").grab(u)};var e=function(){var s=$(document).getElement(".autocompleter-choices");if(s){s.destroy();g=false}};a();var h,d;q.addEvents({mouseup:function(u){var t=q.getSelectedRange().start,s=r(t);e();f(t,s);this.fireEvent("keyup",u);u.stop();return false},blur:function(){console.log(g);if(!g){e()}},keydown:function(u){a();var t=q.getSelectedRange().start,s=r(t);switch(u.key){case"up":if(d.length>0&&c>=0){if(c<d.length){$(document).getElement(".autocompleter-choices li[rel="+c+"]").removeClass("autocompleter-selected")}if(c>0){c--}else{c=d.length-1}$(document).getElement(".autocompleter-choices li[rel="+c+"]").addClass("autocompleter-selected");b(d[c],s.offsetStart,s.offsetEnd);a();s=r(t);f(t,s)}u.stop();return false;case"down":if(d.length>0&&c<d.length){if(c>=0){$(document).getElement(".autocompleter-choices li[rel="+c+"]").removeClass("autocompleter-selected")}if(c<d.length-1){c++}else{c=0}$(document).getElement(".autocompleter-choices li[rel="+c+"]").addClass("autocompleter-selected");b(d[c],s.offsetStart,s.offsetEnd);a();s=r(t);f(t,s)}u.stop();return false;case"enter":e();q.selectRange(s.offsetEnd,s.offsetEnd);u.stop();return false;default:break}},keyup:function(u){a();var t=q.getSelectedRange().start,s=r(t);switch(u.key){case"left":case"right":case"backspace":case"delete":case"esc":e();u.key="a";this.fireEvent("keyup",u,1000);break;case"enter":return false;case"up":case"down":return false;case"space":default:e();h=k(t,s);d=n(h);if(d.length>0){f(t,s);m(h,d)}break}}})};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -