1//Document Text Resizer script (May 14th, 08'): By JavaScript Kit: http://www.javascriptkit.com 2 3var documenttextsizer={ 4 5prevcontrol: '', //remember last control clicked on/ selected 6existingclasses: '', 7 8setpageclass:function(control, newclass){ 9 if (this.prevcontrol!='') 10 this.css(this.prevcontrol, 'selectedtoggler', 'remove') //de-select previous control, by removing 'selectedtoggler' from it 11 document.documentElement.className=this.existingclasses+' '+newclass //apply new class to document 12 this.css(control, 'selectedtoggler', 'add') //select current control 13 this.setCookie('pagesetting', newclass, 5) //remember new class added to document for 5 days 14 this.prevcontrol=control 15}, 16 17css:function(el, targetclass, action){ 18 var needle=new RegExp("(^|\\s+)"+targetclass+"($|\\s+)", "ig") 19 if (action=="check") 20 return needle.test(el.className) 21 else if (action=="remove") 22 el.className=el.className.replace(needle, "") 23 else if (action=="add") 24 el.className+=" "+targetclass 25}, 26 27getCookie:function(Name){ 28 var re=new RegExp(Name+"=[^;]+", "i"); //construct RE to search for target name/value pair 29 if (document.cookie.match(re)) //if cookie found 30 return document.cookie.match(re)[0].split("=")[1] //return its value 31 return null 32}, 33 34setCookie:function(name, value, days){ 35 if (typeof days!="undefined"){ //if set persistent cookie 36 var expireDate = new Date() 37 var expstring=expireDate.setDate(expireDate.getDate()+days) 38 document.cookie = name+"="+value+"; path=/; expires="+expireDate.toGMTString() 39 } 40 else //else if this is a session only cookie 41 document.cookie = name+"="+value 42}, 43 44setup:function(targetclass){ 45 this.existingclasses=document.documentElement.className //store existing CSS classes on HTML element, if any 46 var persistedsetting=this.getCookie('pagesetting') 47 var alllinks=document.getElementsByTagName("a") 48 for (var i=0; i<alllinks.length; i++){ 49 if (this.css(alllinks[i], targetclass, "check")){ 50 if (alllinks[i].getAttribute("rel")==persistedsetting) //if this control's rel attribute matches persisted doc CSS class name 51 this.setpageclass(alllinks[i], alllinks[i].getAttribute("rel")) //apply persisted class to document 52 alllinks[i].onclick=function(){ 53 documenttextsizer.setpageclass(this, this.getAttribute("rel")) 54 return false 55 } 56 } 57 } 58} 59 60}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.