From: Subject: =?Windows-1252?Q?Sj=F8hus_i_unike_omgivelser._-_FINN_Eiendom?= Date: Mon, 15 Feb 2010 14:09:56 +0100 MIME-Version: 1.0 Content-Type: multipart/related; type="text/html"; boundary="----=_NextPart_000_0000_01CAAE48.8D627A00" X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579 This is a multi-part message in MIME format. ------=_NextPart_000_0000_01CAAE48.8D627A00 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.finn.no/finn/realestate/object?finnkode=19613440&sid=xz11ked7ZF-v165713 Sj=F8hus i = unike omgivelser. - FINN Eiendom
FINN.no = /=20 Eiendom = / Fritidsbolig = til=20 salgs
Resultat=20 Neste=20 >>
=20 3D"Del 3D"Skriv
Sist endret: 05.02.2010=20 19:29
Finnkode: 19613440 =

Sj=F8hus i unike omgivelser.

Prisinformasjon

Prisantydning 1.480.000,-
Pris=20 p=E5 finansiering av boligen
Pris p=E5=20 forsikring av fritidseiendommen

Fellesgjeld
0,-
Totalpris
1.480.000,-
Fellesformue
0,-


Fakta

Boligtype
Annet fritid
Soverom
3
Grunnflate
70m=B2
Beliggenhet
Ved sj=F8en
Bygge=E5r
2010
Tomt
730m=B2  eiet
Ant. p-plasser
2

Fasiliteter

  • Balkong/Terrasse
  • Bilvei frem
  • B=E5tplass
  • Offentlig vann/kloakk
  • Parkering
  • Peis/Ildsted
  • Utsikt
  • Fiskemulighet
  • Innlagt str=F8m
  • Innlagt vann
  • Strandlinje
  • Turterreng

Beskrivelse

Beliggenhet

Rorbua ligger i et hyggelig nabolag p=E5 en = naturskapt=20 "molo" med skipsleia p=E5 den ene siden, og en lun havn p=E5 den andre. = Nydelig=20 utsikt. Sol store deler av d=F8gnet. Her kan du g=E5 direkte fra din = egen terrasse=20 og ned i b=E5ten. Det er ikke ofte det kommer slike muligheter.
Generelt

Oppgitt pris er ferdig utvendig samt ferdig = isolert. Kan=20 ogs=E5 leveres som n=F8kkelferdig leveranse til kr 1 680 000. Ta kontakt = for mere=20 info. ev. visning.
=C5rlig medlemsavgift i hytteforening ca 2500 kr = pr=20 =E5r.
Sammenlign gjerne pris med tilsvarende prosjekter.
Adkomst/Tomteforhold

Adkomst enten med egen b=E5t eller med = bil. Det=20 er ca 5 min kj=F8ring til butikk med cafe, samt hurtigb=E5tanl=F8p. = Parkering skjer p=E5=20 egen tomt.
Her er Sj=F8husene etablert p=E5 egene tomter, ikke vegg i = vegg slik=20 som i andre prosjekter.
Under bygging.

Sj=F8huset er under bygging, kan = ferdigstilles raskt=20 ved kontraktsing=E5else.
Innhold

Fleksible l=F8sninger vedr. innredningsl=F8sninger = samt=20 materialvalg.. Kj=F8kken med direkte adkomst via dobbel balkongd=F8r ut = p=E5 terrasse.=20 Stue med utsikt ut over mot Arn=F8yene og skipsleia, hems med god = h=F8yde her er det=20 planlagt en koselig loftstue med utsikt mot "havna". Men det er mange=20 innrednings muligheter, alt etter hva man =F8nsker. antall soverom, = st=F8rrelse p=E5=20 kj=F8kken/stue o.s.v. Vi planlegger og tegner etter deres = =F8nske.
Egen=20 flytebrygge og kai kan etableres med direkte adkomst fra balkong. Mere=20 info/bilder/tegninger kommer
Standard

God standar m.h.t materialvalg o.s.v

Prospekter kan v=E6re mangelfulle. Lovp=E5lagte = opplysninger iht=20 opplysningsplikt kan man f=E5 direkte fra meglerfirma, selger eller = utleier.=20

S=F8k om l=E5n fra

  • DnB NOR
  • SpareBank 1
  • Storebrand Bank
  • Nordea
  • Bankpartner
  • Finance Broker
  • Fokus Bank
  • Gjensidige Bank
Mer=20 om lån
Prisantydning 1.480.000,-
Pris=20 p=E5 finansiering av boligen
Vidar = Str=F8mseth
Telefon 913 20 558 / 900 88 547
=D8nsker ikke kontakt med = telefonselgere

Send=20 epost
Hjemmeside
V=E5g,
8130 Sandhorn=F8y
3DKart=20
3DKart=20
S=F8k etter = bedrifter=20
  • Malere3D""=20=20
  • Snekke= re3D""=20=20
  • R=F8= rleggere3D""=20=20
  • Ele= ktrikere3D""=20=20
  • Takse= ring3D""=20=20
  • M=F8bler=20 og innredning3D""=20=20
  • Flyttetjenester3D""=20=20
  • Kj=F8kkeninnredning3D""=20=20
  • Bad3D""=20=20

Alle kategorier=20

Fritidsbolig i = utlandet?=20
3D"Bolig
Popul=E6re Hytteomr=E5der
  • P=E5 fjellet=20
  • Trysil=20
  • Sjusj=F8en=20
  • Hafjell=20
  • Skeikampen=20
  • Kvitfjell=20
  • Tyin=20
  • Beitost=F8len=20
  • Hemsedal=20
  • Geilo=20
  • Norefjell=20
  • Hovden=20
  • Oppdal=20
  • Gaustablikk=20
  • Nesbyen=20
    Ved sj=F8en=20
  • T=F8= nsberg=20 - Tj=F8me=20
  • Sandefjord=20
  • Lar= vik=20 - Stavern=20
  • Krager=F8=20
  • Ris=F8r=20
  • Tvedestrand=20
  • Arendal=20
  • Grimstad=20
  • Lillesand=20
  • Kristiansand=20
  • Mandal=20

Inspirasjon til =E5 fornye hjemmet?

Se bilder av stuer p=E5 FINN Inspirasjon=20
  •  3D""=20&n= bsp;=20
  •  3D""=20&n= bsp;=20


FINN-kodes=F8k: =20

"]||[0,"",""];div.innerHTML=3Dwrap[1]+elem+wrap[2];while(wra= p[0]--)div=3Ddiv.lastChild;if(jQuery.browser.msie){var = tbody=3D!tags.indexOf(""&&tags.indexOf("=3D0;--j)if(jQuery.nodeName(tbody[j],"tbody")&&!tbod= y[j].childNodes.length)tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/= .test(elem))div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]= ),div.firstChild);}elem=3DjQuery.makeArray(div.childNodes);}if(elem.lengt= h=3D=3D=3D0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"selec= t")))return;if(elem[0]=3D=3Dundefined||jQuery.nodeName(elem,"form")||elem= .options)ret.push(elem);else=0A= ret=3DjQuery.merge(ret,elem);});return = ret;},attr:function(elem,name,value){if(!elem||elem.nodeType=3D=3D3||elem= .nodeType=3D=3D8)return undefined;var = notxml=3D!jQuery.isXMLDoc(elem),set=3Dvalue!=3D=3Dundefined,msie=3DjQuery= .browser.msie;name=3Dnotxml&&jQuery.props[name]||name;if(elem.tagName){va= r = special=3D/href|src|style/.test(name);if(name=3D=3D"selected"&&jQuery.bro= wser.safari)elem.parentNode.selectedIndex;if(name in = elem&¬xml&&!special){if(set){if(name=3D=3D"type"&&jQuery.nodeName(elem= ,"input")&&elem.parentNode)throw"type property can't be = changed";elem[name]=3Dvalue;}if(jQuery.nodeName(elem,"form")&&elem.getAtt= ributeNode(name))return elem.getAttributeNode(name).nodeValue;return = elem[name];}if(msie&¬xml&&name=3D=3D"style")return = jQuery.attr(elem.style,"cssText",value);if(set)elem.setAttribute(name,""+= value);var = attr=3Dmsie&¬xml&&special?elem.getAttribute(name,2):elem.getAttribute(= name);return = attr=3D=3D=3Dnull?undefined:attr;}if(msie&&name=3D=3D"opacity"){if(set){e= lem.zoom=3D1;elem.filter=3D(elem.filter||"").replace(/alpha\([^)]*\)/,"")= +(parseInt(value)+''=3D=3D"NaN"?"":"alpha(opacity=3D"+value*100+")");}ret= urn = elem.filter&&elem.filter.indexOf("opacity=3D")>=3D0?(parseFloat(elem.filt= er.match(/opacity=3D([^)]*)/)[1])/100)+'':"";}name=3Dname.replace(/-([a-z= ])/ig,function(all,letter){return = letter.toUpperCase();});if(set)elem[name]=3Dvalue;return = elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,""= );},makeArray:function(array){var ret=3D[];if(array!=3Dnull){var = i=3Darray.length;if(i=3D=3Dnull||array.split||array.setInterval||array.ca= ll)ret[0]=3Darray;else=0A= while(i)ret[--i]=3Darray[i];}return = ret;},inArray:function(elem,array){for(var = i=3D0,length=3Darray.length;i*",t= his).remove();while(this.firstChild)this.removeChild(this.firstChild);}},= function(name,fn){jQuery.fn[name]=3Dfunction(){return = this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,na= me){var = type=3Dname.toLowerCase();jQuery.fn[type]=3Dfunction(size){return = this[0]=3D=3Dwindow?jQuery.browser.opera&&document.body["client"+name]||j= Query.browser.safari&&window["inner"+name]||document.compatMode=3D=3D"CSS= 1Compat"&&document.documentElement["client"+name]||document.body["client"= +name]:this[0]=3D=3Ddocument?Math.max(Math.max(document.body["scroll"+nam= e],document.documentElement["scroll"+name]),Math.max(document.body["offse= t"+name],document.documentElement["offset"+name])):size=3D=3Dundefined?(t= his.length?jQuery.css(this[0],type):null):this.css(type,size.constructor=3D= =3DString?size:size+"px");};});function num(elem,prop){return = elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var = chars=3DjQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[= \\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=3Dnew = RegExp("^>\\s*("+chars+"+)"),quickID=3Dnew = RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=3Dnew = RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){re= turn m[2]=3D=3D"*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return = a.getAttribute("id")=3D=3Dm[2];},":":{lt:function(a,i,m){return = im[3]-0;},nth:function(a,i,m){return = m[3]-0=3D=3Di;},eq:function(a,i,m){return = m[3]-0=3D=3Di;},first:function(a,i){return = i=3D=3D0;},last:function(a,i,m,r){return = i=3D=3Dr.length-1;},even:function(a,i){return = i%2=3D=3D0;},odd:function(a,i){return = i%2;},"first-child":function(a){return = a.parentNode.getElementsByTagName("*")[0]=3D=3Da;},"last-child":function(= a){return = jQuery.nth(a.parentNode.lastChild,1,"previousSibling")=3D=3Da;},"only-chi= ld":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibli= ng");},parent:function(a){return = a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(= a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m= [3])>=3D0;},visible:function(a){return"hidden"!=3Da.type&&jQuery.css(a,"d= isplay")!=3D"none"&&jQuery.css(a,"visibility")!=3D"hidden";},hidden:funct= ion(a){return"hidden"=3D=3Da.type||jQuery.css(a,"display")=3D=3D"none"||j= Query.css(a,"visibility")=3D=3D"hidden";},enabled:function(a){return!a.di= sabled;},disabled:function(a){return = a.disabled;},checked:function(a){return = a.checked;},selected:function(a){return = a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"=3D=3D= a.type;},radio:function(a){return"radio"=3D=3Da.type;},checkbox:function(= a){return"checkbox"=3D=3Da.type;},file:function(a){return"file"=3D=3Da.ty= pe;},password:function(a){return"password"=3D=3Da.type;},submit:function(= a){return"submit"=3D=3Da.type;},image:function(a){return"image"=3D=3Da.ty= pe;},reset:function(a){return"reset"=3D=3Da.type;},button:function(a){ret= urn"button"=3D=3Da.type||jQuery.nodeName(a,"button");},input:function(a){= return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i= ,m){return = jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeN= ame);},animated:function(a){return = jQuery.grep(jQuery.timers,function(fn){return = a=3D=3Dfn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=3D]*) = *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new = RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var= old,cur=3D[];while(expr&&expr!=3Dold){old=3Dexpr;var = f=3DjQuery.filter(expr,elems,not);expr=3Df.t.replace(/^\s*,\s*/,"");cur=3D= not?elems=3Df.r:jQuery.merge(cur,f.r);}return = cur;},find:function(t,context){if(typeof = t!=3D"string")return[t];if(context&&context.nodeType!=3D1&&context.nodeTy= pe!=3D9)return[];context=3Dcontext||document;var = ret=3D[context],done=3D[],last,nodeName;while(t&&last!=3Dt){var = r=3D[];last=3Dt;t=3DjQuery.trim(t);var = foundToken=3Dfalse,re=3DquickChild,m=3Dre.exec(t);if(m){nodeName=3Dm[1].t= oUpperCase();for(var i=3D0;ret[i];i++)for(var = c=3Dret[i].firstChild;c;c=3Dc.nextSibling)if(c.nodeType=3D=3D1&&(nodeName= =3D=3D"*"||c.nodeName.toUpperCase()=3D=3DnodeName))r.push(c);ret=3Dr;t=3D= t.replace(re,"");if(t.indexOf(" = ")=3D=3D0)continue;foundToken=3Dtrue;}else{re=3D/^([>+~])\s*(\w*)/i;if((m= =3Dre.exec(t))!=3Dnull){r=3D[];var = merge=3D{};nodeName=3Dm[2].toUpperCase();m=3Dm[1];for(var = j=3D0,rl=3Dret.length;j=3D0)^not)tmp.= push(a);}r=3Dtmp;}else if(m[1]=3D=3D":"&&m[2]=3D=3D"nth-child"){var = merge=3D{},tmp=3D[],test=3D/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=3D=3D"eve= n"&&"2n"||m[3]=3D=3D"odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),fi= rst=3D(test[1]+(test[2]||1))-0,last=3Dtest[3]-0;for(var = i=3D0,rl=3Dr.length;i=3D0)a= dd=3Dtrue;if(add^not)tmp.push(node);}r=3Dtmp;}else{var = fn=3DjQuery.expr[m[1]];if(typeof = fn=3D=3D"object")fn=3Dfn[m[2]];if(typeof = fn=3D=3D"string")fn=3Deval("false||function(a,i){return = "+fn+";}");r=3DjQuery.grep(r,function(elem,i){return = fn(elem,i,m,r);},not);}}return{r:r,t:t};},dir:function(elem,dir){var = matched=3D[],cur=3Delem[dir];while(cur&&cur!=3Ddocument){if(cur.nodeType=3D= =3D1)matched.push(cur);cur=3Dcur[dir];}return = matched;},nth:function(cur,result,dir,elem){result=3Dresult||1;var = num=3D0;for(;cur;cur=3Dcur[dir])if(cur.nodeType=3D=3D1&&++num=3D=3Dresult= )break;return cur;},sibling:function(n,elem){var = r=3D[];for(;n;n=3Dn.nextSibling){if(n.nodeType=3D=3D1&&n!=3Delem)r.push(n= );}return = r;}});jQuery.event=3D{add:function(elem,types,handler,data){if(elem.nodeT= ype=3D=3D3||elem.nodeType=3D=3D8)return;if(jQuery.browser.msie&&elem.setI= nterval)elem=3Dwindow;if(!handler.guid)handler.guid=3Dthis.guid++;if(data= !=3Dundefined){var = fn=3Dhandler;handler=3Dthis.proxy(fn,function(){return = fn.apply(this,arguments);});handler.data=3Ddata;}var = events=3DjQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle= =3DjQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(ty= peof jQuery!=3D"undefined"&&!jQuery.event.triggered)return = jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem= =3Delem;jQuery.each(types.split(/\s+/),function(index,type){var = parts=3Dtype.split(".");type=3Dparts[0];handler.type=3Dparts[1];var = handlers=3Devents[type];if(!handlers){handlers=3Devents[type]=3D{};if(!jQ= uery.event.special[type]||jQuery.event.special[type].setup.call(elem)=3D=3D= =3Dfalse){if(elem.addEventListener)elem.addEventListener(type,handle,fals= e);else = if(elem.attachEvent)elem.attachEvent("on"+type,handle);}}handlers[handler= .guid]=3Dhandler;jQuery.event.global[type]=3Dtrue;});elem=3Dnull;},guid:1= ,global:{},remove:function(elem,types,handler){if(elem.nodeType=3D=3D3||e= lem.nodeType=3D=3D8)return;var = events=3DjQuery.data(elem,"events"),ret,index;if(events){if(types=3D=3Dun= defined||(typeof types=3D=3D"string"&&types.charAt(0)=3D=3D"."))for(var = type in = events)this.remove(elem,type+(types||""));else{if(types.type){handler=3Dt= ypes.handler;types=3Dtypes.type;}jQuery.each(types.split(/\s+/),function(= index,type){var = parts=3Dtype.split(".");type=3Dparts[0];if(events[type]){if(handler)delet= e events[type][handler.guid];else=0A= for(handler in = events[type])if(!parts[1]||events[type][handler].type=3D=3Dparts[1])delet= e events[type][handler];for(ret in = events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.= special[type].teardown.call(elem)=3D=3D=3Dfalse){if(elem.removeEventListe= ner)elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else = if(elem.detachEvent)elem.detachEvent("on"+type,jQuery.data(elem,"handle")= );}ret=3Dnull;delete events[type];}}});}for(ret in = events)break;if(!ret){var = handle=3DjQuery.data(elem,"handle");if(handle)handle.elem=3Dnull;jQuery.r= emoveData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:fun= ction(type,data,elem,donative,extra){data=3DjQuery.makeArray(data);if(typ= e.indexOf("!")>=3D0){type=3Dtype.slice(0,-1);var = exclusive=3Dtrue;}if(!elem){if(this.global[type])jQuery("*").add([window,= document]).trigger(type,data);}else{if(elem.nodeType=3D=3D3||elem.nodeTyp= e=3D=3D8)return undefined;var = val,ret,fn=3DjQuery.isFunction(elem[type]||null),event=3D!data[0]||!data[= 0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDe= fault:function(){},stopPropagation:function(){},timeStamp:now()});data[0]= [expando]=3Dtrue;}data[0].type=3Dtype;if(exclusive)data[0].exclusive=3Dtr= ue;var = handle=3DjQuery.data(elem,"handle");if(handle)val=3Dhandle.apply(elem,dat= a);if((!fn||(jQuery.nodeName(elem,'a')&&type=3D=3D"click"))&&elem["on"+ty= pe]&&elem["on"+type].apply(elem,data)=3D=3D=3Dfalse)val=3Dfalse;if(event)= data.shift();if(extra&&jQuery.isFunction(extra)){ret=3Dextra.apply(elem,v= al=3D=3Dnull?data:data.concat(val));if(ret!=3D=3Dundefined)val=3Dret;}if(= fn&&donative!=3D=3Dfalse&&val!=3D=3Dfalse&&!(jQuery.nodeName(elem,'a')&&t= ype=3D=3D"click")){this.triggered=3Dtrue;try{elem[type]();}catch(e){}}thi= s.triggered=3Dfalse;}return val;},handle:function(event){var = val,ret,namespace,all,handlers;event=3Darguments[0]=3DjQuery.event.fix(ev= ent||window.event);namespace=3Devent.type.split(".");event.type=3Dnamespa= ce[0];namespace=3Dnamespace[1];all=3D!namespace&&!event.exclusive;handler= s=3D(jQuery.data(this,"events")||{})[event.type];for(var j in = handlers){var = handler=3Dhandlers[j];if(all||handler.type=3D=3Dnamespace){event.handler=3D= handler;event.data=3Dhandler.data;ret=3Dhandler.apply(this,arguments);if(= val!=3D=3Dfalse)val=3Dret;if(ret=3D=3D=3Dfalse){event.preventDefault();ev= ent.stopPropagation();}}}return = val;},fix:function(event){if(event[expando]=3D=3Dtrue)return event;var = originalEvent=3Devent;event=3D{originalEvent:originalEvent};var = props=3D"altKey attrChange attrName bubbles button cancelable charCode = clientX clientY ctrlKey currentTarget data detail eventPhase fromElement = handler keyCode metaKey newValue originalTarget pageX pageY prevValue = relatedNode relatedTarget screenX screenY shiftKey srcElement target = timeStamp toElement type view wheelDelta which".split(" ");for(var = i=3Dprops.length;i;i--)event[props[i]]=3DoriginalEvent[props[i]];event[ex= pando]=3Dtrue;event.preventDefault=3Dfunction(){if(originalEvent.preventD= efault)originalEvent.preventDefault();originalEvent.returnValue=3Dfalse;}= ;event.stopPropagation=3Dfunction(){if(originalEvent.stopPropagation)orig= inalEvent.stopPropagation();originalEvent.cancelBubble=3Dtrue;};event.tim= eStamp=3Devent.timeStamp||now();if(!event.target)event.target=3Devent.src= Element||document;if(event.target.nodeType=3D=3D3)event.target=3Devent.ta= rget.parentNode;if(!event.relatedTarget&&event.fromElement)event.relatedT= arget=3Devent.fromElement=3D=3Devent.target?event.toElement:event.fromEle= ment;if(event.pageX=3D=3Dnull&&event.clientX!=3Dnull){var = doc=3Ddocument.documentElement,body=3Ddocument.body;event.pageX=3Devent.c= lientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0= );event.pageY=3Devent.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||= 0)-(doc.clientTop||0);}if(!event.which&&((event.charCode||event.charCode=3D= =3D=3D0)?event.charCode:event.keyCode))event.which=3Devent.charCode||even= t.keyCode;if(!event.metaKey&&event.ctrlKey)event.metaKey=3Devent.ctrlKey;= if(!event.which&&event.button)event.which=3D(event.button&1?1:(event.butt= on&2?3:(event.button&4?2:0)));return = event;},proxy:function(fn,proxy){proxy.guid=3Dfn.guid=3Dfn.guid||proxy.gu= id||this.guid++;return = proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:fu= nction(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)re= turn = false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handl= er);return true;},teardown:function(){if(jQuery.browser.msie)return = false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.han= dler);return = true;},handler:function(event){if(withinElement(event,this))return = true;event.type=3D"mouseenter";return = jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function()= {if(jQuery.browser.msie)return = false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handle= r);return true;},teardown:function(){if(jQuery.browser.msie)return = false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.hand= ler);return = true;},handler:function(event){if(withinElement(event,this))return = true;event.type=3D"mouseleave";return = jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:fun= ction(type,data,fn){return = type=3D=3D"unload"?this.one(type,data,fn):this.each(function(){jQuery.eve= nt.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var = one=3DjQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(eve= nt,one);return(fn||data).apply(this,arguments);});return = this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind= :function(type,fn){return = this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:funct= ion(type,data,fn){return = this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},tr= iggerHandler:function(type,data,fn){return = this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:functi= on(fn){var = args=3Darguments,i=3D1;while(i=3D0){var = selector=3Durl.slice(off,url.length);url=3Durl.slice(0,off);}callback=3Dc= allback||function(){};var = type=3D"GET";if(params)if(jQuery.isFunction(params)){callback=3Dparams;pa= rams=3Dnull;}else{params=3DjQuery.param(params);type=3D"POST";}var = self=3Dthis;jQuery.ajax({url:url,type:type,dataType:"html",data:params,co= mplete:function(res,status){if(status=3D=3D"success"||status=3D=3D"notmod= ified")self.html(selector?jQuery("
").append(res.responseText.replac= e(//g,"")).find(selector):res.responseText);self.= each(callback,[res.responseText,status,res]);}});return = this;},serialize:function(){return = jQuery.param(this.serializeArray());},serializeArray:function(){return = this.map(function(){return = jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filt= er(function(){return = this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.no= deName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem)= {var val=3DjQuery(this).val();return = val=3D=3Dnull?null:val.constructor=3D=3DArray?jQuery.map(val,function(val= ,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get= ();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess= ,ajaxSend".split(","),function(i,o){jQuery.fn[o]=3Dfunction(f){return = this.bind(o,f);};});var = jsc=3Dnow();jQuery.extend({get:function(url,data,callback,type){if(jQuery= .isFunction(data)){callback=3Ddata;data=3Dnull;}return = jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type}= );},getScript:function(url,callback){return = jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callba= ck){return = jQuery.get(url,data,callback,"json");},post:function(url,data,callback,ty= pe){if(jQuery.isFunction(data)){callback=3Ddata;data=3D{};}return = jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type= });},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,setti= ngs);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,c= ontentType:"application/x-www-form-urlencoded",processData:true,async:tru= e,data:null,username:null,password:null,accepts:{xml:"application/xml, = text/xml",html:"text/html",script:"text/javascript, = application/javascript",json:"application/json, = text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:= function(s){s=3DjQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSet= tings,s));var = jsonp,jsre=3D/=3D\?(&|$)/g,status,data,type=3Ds.type.toUpperCase();if(s.d= ata&&s.processData&&typeof = s.data!=3D"string")s.data=3DjQuery.param(s.data);if(s.dataType=3D=3D"json= p"){if(type=3D=3D"GET"){if(!s.url.match(jsre))s.url+=3D(s.url.match(/\?/)= ?"&":"?")+(s.jsonp||"callback")+"=3D?";}else = if(!s.data||!s.data.match(jsre))s.data=3D(s.data?s.data+"&":"")+(s.jsonp|= |"callback")+"=3D?";s.dataType=3D"json";}if(s.dataType=3D=3D"json"&&(s.da= ta&&s.data.match(jsre)||s.url.match(jsre))){jsonp=3D"jsonp"+jsc++;if(s.da= ta)s.data=3D(s.data+"").replace(jsre,"=3D"+jsonp+"$1");s.url=3Ds.url.repl= ace(jsre,"=3D"+jsonp+"$1");s.dataType=3D"script";window[jsonp]=3Dfunction= (tmp){data=3Dtmp;success();complete();window[jsonp]=3Dundefined;try{delet= e = window[jsonp];}catch(e){}if(head)head.removeChild(script);};}if(s.dataTyp= e=3D=3D"script"&&s.cache=3D=3Dnull)s.cache=3Dfalse;if(s.cache=3D=3D=3Dfal= se&&type=3D=3D"GET"){var ts=3Dnow();var = ret=3Ds.url.replace(/(\?|&)_=3D.*?(&|$)/,"$1_=3D"+ts+"$2");s.url=3Dret+((= ret=3D=3Ds.url)?(s.url.match(/\?/)?"&":"?")+"_=3D"+ts:"");}if(s.data&&typ= e=3D=3D"GET"){s.url+=3D(s.url.match(/\?/)?"&":"?")+s.data;s.data=3Dnull;}= if(s.global&&!jQuery.active++)jQuery.event.trigger("ajaxStart");var = remote=3D/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=3D=3D"script"&&type=3D=3D= "GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=3Dlocation.host){var = head=3Ddocument.getElementsByTagName("head")[0];var = script=3Ddocument.createElement("script");script.src=3Ds.url;if(s.scriptC= harset)script.charset=3Ds.scriptCharset;if(!jsonp){var = done=3Dfalse;script.onload=3Dscript.onreadystatechange=3Dfunction(){if(!d= one&&(!this.readyState||this.readyState=3D=3D"loaded"||this.readyState=3D= =3D"complete")){done=3Dtrue;success();complete();head.removeChild(script)= ;}};}head.appendChild(script);return undefined;}var = requestDone=3Dfalse;var xhr=3Dwindow.ActiveXObject?new = ActiveXObject("Microsoft.XMLHTTP"):new = XMLHttpRequest();if(s.username)xhr.open(type,s.url,s.async,s.username,s.p= assword);else=0A= xhr.open(type,s.url,s.async);try{if(s.data)xhr.setRequestHeader("Content-= Type",s.contentType);if(s.ifModified)xhr.setRequestHeader("If-Modified-Si= nce",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 = GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRe= questHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataTy= pe]+", = */*":s.accepts._default);}catch(e){}if(s.beforeSend&&s.beforeSend(xhr,s)=3D= =3D=3Dfalse){s.global&&jQuery.active--;xhr.abort();return = false;}if(s.global)jQuery.event.trigger("ajaxSend",[xhr,s]);var = onreadystatechange=3Dfunction(isTimeout){if(!requestDone&&xhr&&(xhr.ready= State=3D=3D4||isTimeout=3D=3D"timeout")){requestDone=3Dtrue;if(ival){clea= rInterval(ival);ival=3Dnull;}status=3DisTimeout=3D=3D"timeout"&&"timeout"= ||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified= (xhr,s.url)&&"notmodified"||"success";if(status=3D=3D"success"){try{data=3D= jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status=3D"parserer= ror";}}if(status=3D=3D"success"){var = modRes;try{modRes=3Dxhr.getResponseHeader("Last-Modified");}catch(e){}if(= s.ifModified&&modRes)jQuery.lastModified[s.url]=3DmodRes;if(!jsonp)succes= s();}else=0A= jQuery.handleError(s,xhr,status);complete();if(s.async)xhr=3Dnull;}};if(s= .async){var = ival=3DsetInterval(onreadystatechange,13);if(s.timeout>0)setTimeout(funct= ion(){if(xhr){xhr.abort();if(!requestDone)onreadystatechange("timeout");}= },s.timeout);}try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,nul= l,e);}if(!s.async)onreadystatechange();function = success(){if(s.success)s.success(data,status);if(s.global)jQuery.event.tr= igger("ajaxSuccess",[xhr,s]);}function = complete(){if(s.complete)s.complete(xhr,status);if(s.global)jQuery.event.= trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active)jQuery.even= t.trigger("ajaxStop");}return = xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,= e);if(s.global)jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,htt= pSuccess:function(xhr){try{return!xhr.status&&location.protocol=3D=3D"fil= e:"||(xhr.status>=3D200&&xhr.status<300)||xhr.status=3D=3D304||xhr.status= =3D=3D1223||jQuery.browser.safari&&xhr.status=3D=3Dundefined;}catch(e){}r= eturn false;},httpNotModified:function(xhr,url){try{var = xhrRes=3Dxhr.getResponseHeader("Last-Modified");return = xhr.status=3D=3D304||xhrRes=3D=3DjQuery.lastModified[url]||jQuery.browser= .safari&&xhr.status=3D=3Dundefined;}catch(e){}return = false;},httpData:function(xhr,type,filter){var = ct=3Dxhr.getResponseHeader("content-type"),xml=3Dtype=3D=3D"xml"||!type&&= ct&&ct.indexOf("xml")>=3D0,data=3Dxml?xhr.responseXML:xhr.responseText;if= (xml&&data.documentElement.tagName=3D=3D"parsererror")throw"parsererror";= if(filter)data=3Dfilter(data,type);if(type=3D=3D"script")jQuery.globalEva= l(data);if(type=3D=3D"json")data=3Deval("("+data+")");return = data;},param:function(a){var = s=3D[];if(a.constructor=3D=3DArray||a.jquery)jQuery.each(a,function(){s.p= ush(encodeURIComponent(this.name)+"=3D"+encodeURIComponent(this.value));}= );else=0A= for(var j in = a)if(a[j]&&a[j].constructor=3D=3DArray)jQuery.each(a[j],function(){s.push= (encodeURIComponent(j)+"=3D"+encodeURIComponent(this));});else=0A= s.push(encodeURIComponent(j)+"=3D"+encodeURIComponent(jQuery.isFunction(a= [j])?a[j]():a[j]));return = s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed= ,callback){return = speed?this.animate({height:"show",width:"show",opacity:"show"},speed,call= back):this.filter(":hidden").each(function(){this.style.display=3Dthis.ol= dblock||"";if(jQuery.css(this,"display")=3D=3D"none"){var = elem=3DjQuery("<"+this.tagName+" = />").appendTo("body");this.style.display=3Delem.css("display");if(this.st= yle.display=3D=3D"none")this.style.display=3D"block";elem.remove();}}).en= d();},hide:function(speed,callback){return = speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,call= back):this.filter(":visible").each(function(){this.oldblock=3Dthis.oldblo= ck||jQuery.css(this,"display");this.style.display=3D"none";}).end();},_to= ggle:jQuery.fn.toggle,toggle:function(fn,fn2){return = jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arg= uments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"}= ,fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"sh= ow":"hide"]();});},slideDown:function(speed,callback){return = this.animate({height:"show"},speed,callback);},slideUp:function(speed,cal= lback){return = this.animate({height:"hide"},speed,callback);},slideToggle:function(speed= ,callback){return = this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,ca= llback){return = this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,ca= llback){return = this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,= callback){return = this.animate({opacity:to},speed,callback);},animate:function(prop,speed,e= asing,callback){var optall=3DjQuery.speed(speed,easing,callback);return = this[optall.queue=3D=3D=3Dfalse?"each":"queue"](function(){if(this.nodeTy= pe!=3D1)return false;var = opt=3DjQuery.extend({},optall),p,hidden=3DjQuery(this).is(":hidden"),self= =3Dthis;for(p in = prop){if(prop[p]=3D=3D"hide"&&hidden||prop[p]=3D=3D"show"&&!hidden)return= = opt.complete.call(this);if(p=3D=3D"height"||p=3D=3D"width"){opt.display=3D= jQuery.css(this,"display");opt.overflow=3Dthis.style.overflow;}}if(opt.ov= erflow!=3Dnull)this.style.overflow=3D"hidden";opt.curAnim=3DjQuery.extend= ({},prop);jQuery.each(prop,function(name,val){var e=3Dnew = jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val))e[val=3D=3D"togg= le"?hidden?"show":"hide":val](prop);else{var = parts=3Dval.toString().match(/^([+-]=3D)?([\d+-.]+)(.*)$/),start=3De.cur(= true)||0;if(parts){var = end=3DparseFloat(parts[2]),unit=3Dparts[3]||"px";if(unit!=3D"px"){self.st= yle[name]=3D(end||1)+unit;start=3D((end||1)/e.cur(true))*start;self.style= [name]=3Dstart+unit;}if(parts[1])end=3D((parts[1]=3D=3D"-=3D"?-1:1)*end)+= start;e.custom(start,end,unit);}else=0A= e.custom(start,val,"");}});return = true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type= .constructor=3D=3DArray)){fn=3Dtype;type=3D"fx";}if(!type||(typeof = type=3D=3D"string"&&!fn))return queue(this[0],type);return = this.each(function(){if(fn.constructor=3D=3DArray)queue(this,type,fn);els= e{queue(this,type).push(fn);if(queue(this,type).length=3D=3D1)fn.call(thi= s);}});},stop:function(clearQueue,gotoEnd){var = timers=3DjQuery.timers;if(clearQueue)this.queue([]);this.each(function(){= for(var = i=3Dtimers.length-1;i>=3D0;i--)if(timers[i].elem=3D=3Dthis){if(gotoEnd)ti= mers[i](true);timers.splice(i,1);}});if(!gotoEnd)this.dequeue();return = this;}});var = queue=3Dfunction(elem,type,array){if(elem){type=3Dtype||"fx";var = q=3DjQuery.data(elem,type+"queue");if(!q||array)q=3DjQuery.data(elem,type= +"queue",jQuery.makeArray(array));}return = q;};jQuery.fn.dequeue=3Dfunction(type){type=3Dtype||"fx";return = this.each(function(){var = q=3Dqueue(this,type);q.shift();if(q.length)q[0].call(this);});};jQuery.ex= tend({speed:function(speed,easing,fn){var = opt=3Dspeed&&speed.constructor=3D=3DObject?speed:{complete:fn||!fn&&easin= g||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easi= ng&&easing.constructor!=3DFunction&&easing};opt.duration=3D(opt.duration&= &opt.duration.constructor=3D=3DNumber?opt.duration:jQuery.fx.speeds[opt.d= uration])||jQuery.fx.speeds.def;opt.old=3Dopt.complete;opt.complete=3Dfun= ction(){if(opt.queue!=3D=3Dfalse)jQuery(this).dequeue();if(jQuery.isFunct= ion(opt.old))opt.old.call(this);};return = opt;},easing:{linear:function(p,n,firstNum,diff){return = firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*M= ath.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,= options,prop){this.options=3Doptions;this.elem=3Delem;this.prop=3Dprop;if= (!options.orig)options.orig=3D{};}});jQuery.fx.prototype=3D{update:functi= on(){if(this.options.step)this.options.step.call(this.elem,this.now,this)= ;(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=3D= =3D"height"||this.prop=3D=3D"width")this.elem.style.display=3D"block";},c= ur:function(force){if(this.elem[this.prop]!=3Dnull&&this.elem.style[this.= prop]=3D=3Dnull)return this.elem[this.prop];var = r=3DparseFloat(jQuery.css(this.elem,this.prop,force));return = r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:= function(from,to,unit){this.startTime=3Dnow();this.start=3Dfrom;this.end=3D= to;this.unit=3Dunit||this.unit||"px";this.now=3Dthis.start;this.pos=3Dthi= s.state=3D0;this.update();var self=3Dthis;function t(gotoEnd){return = self.step(gotoEnd);}t.elem=3Dthis.elem;jQuery.timers.push(t);if(jQuery.ti= merId=3D=3Dnull){jQuery.timerId=3DsetInterval(function(){var = timers=3DjQuery.timers;for(var = i=3D0;ithis.options.duration+this.startTime){this.now=3D= this.end;this.pos=3Dthis.state=3D1;this.update();this.options.curAnim[thi= s.prop]=3Dtrue;var done=3Dtrue;for(var i in = this.options.curAnim)if(this.options.curAnim[i]!=3D=3Dtrue)done=3Dfalse;i= f(done){if(this.options.display!=3Dnull){this.elem.style.overflow=3Dthis.= options.overflow;this.elem.style.display=3Dthis.options.display;if(jQuery= .css(this.elem,"display")=3D=3D"none")this.elem.style.display=3D"block";}= if(this.options.hide)this.elem.style.display=3D"none";if(this.options.hid= e||this.options.show)for(var p in = this.options.curAnim)jQuery.attr(this.elem.style,p,this.options.orig[p]);= }if(done)this.options.complete.call(this.elem);return false;}else{var = n=3Dt-this.startTime;this.state=3Dn/this.options.duration;this.pos=3DjQue= ry.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](th= is.state,n,0,1,this.options.duration);this.now=3Dthis.start+((this.end-th= is.start)*this.pos);this.update();}return = true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:= {scrollLeft:function(fx){fx.elem.scrollLeft=3Dfx.now;},scrollTop:function= (fx){fx.elem.scrollTop=3Dfx.now;},opacity:function(fx){jQuery.attr(fx.ele= m.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=3D= fx.now+fx.unit;}}});jQuery.fn.offset=3Dfunction(){var = left=3D0,top=3D0,elem=3Dthis[0],results;if(elem)with(jQuery.browser){var = parent=3Delem.parentNode,offsetChild=3Delem,offsetParent=3Delem.offsetPar= ent,doc=3Delem.ownerDocument,safari2=3Dsafari&&parseInt(version)<522&&!/a= dobeair/i.test(userAgent),css=3DjQuery.curCSS,fixed=3Dcss(elem,"position"= )=3D=3D"fixed";if(elem.getBoundingClientRect){var = box=3Delem.getBoundingClientRect();add(box.left+Math.max(doc.documentElem= ent.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.= scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.d= ocumentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while= (offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(moz= illa&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2)bord= er(offsetParent);if(!fixed&&css(offsetParent,"position")=3D=3D"fixed")fix= ed=3Dtrue;offsetChild=3D/^body$/i.test(offsetParent.tagName)?offsetChild:= offsetParent;offsetParent=3DoffsetParent.offsetParent;}while(parent&&pare= nt.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i= .test(css(parent,"display")))add(-parent.scrollLeft,-parent.scrollTop);if= (mozilla&&css(parent,"overflow")!=3D"visible")border(parent);parent=3Dpar= ent.parentNode;}if((safari2&&(fixed||css(offsetChild,"position")=3D=3D"ab= solute"))||(mozilla&&css(offsetChild,"position")!=3D"absolute"))add(-doc.= body.offsetLeft,-doc.body.offsetTop);if(fixed)add(Math.max(doc.documentEl= ement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scroll= Top,doc.body.scrollTop));}results=3D{top:top,left:left};}function = border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS= (elem,"borderTopWidth",true));}function = add(l,t){left+=3DparseInt(l,10)||0;top+=3DparseInt(t,10)||0;}return = results;};jQuery.fn.extend({position:function(){var = left=3D0,top=3D0,results;if(this[0]){var = offsetParent=3Dthis.offsetParent(),offset=3Dthis.offset(),parentOffset=3D= /^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.= offset();offset.top-=3Dnum(this,'marginTop');offset.left-=3Dnum(this,'mar= ginLeft');parentOffset.top+=3Dnum(offsetParent,'borderTopWidth');parentOf= fset.left+=3Dnum(offsetParent,'borderLeftWidth');results=3D{top:offset.to= p-parentOffset.top,left:offset.left-parentOffset.left};}return = results;},offsetParent:function(){var = offsetParent=3Dthis[0].offsetParent;while(offsetParent&&(!/^body|html$/i.= test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=3D=3D'sta= tic'))offsetParent=3DoffsetParent.offsetParent;return = jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var = method=3D'scroll'+name;jQuery.fn[method]=3Dfunction(val){if(!this[0])retu= rn;return = val!=3Dundefined?this.each(function(){this=3D=3Dwindow||this=3D=3Ddocumen= t?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window)= .scrollTop()):this[method]=3Dval;}):this[0]=3D=3Dwindow||this[0]=3D=3Ddoc= ument?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.docu= mentElement[method]||document.body[method]:this[0][method];};});jQuery.ea= ch(["Height","Width"],function(i,name){var = tl=3Di?"Left":"Top",br=3Di?"Right":"Bottom";jQuery.fn["inner"+name]=3Dfun= ction(){return = this[name.toLowerCase()]()+num(this,"padding"+tl)+num(this,"padding"+br);= };jQuery.fn["outer"+name]=3Dfunction(margin){return = this["inner"+name]()+num(this,"border"+tl+"Width")+num(this,"border"+br+"= Width")+(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})(); ------=_NextPart_000_0000_01CAAE48.8D627A00 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://cache.finn.no/clientscript/lib/jquery.dimensions.js /* Copyright (c) 2007 Paul Bakaus (paul.bakaus@googlemail.com) and = Brandon Aaron (brandon.aaron@gmail.com || http://brandonaaron.net)=0A= * Dual licensed under the MIT = (http://www.opensource.org/licenses/mit-license.php)=0A= * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.=0A= *=0A= * $LastChangedDate: 2007-08-17 14:14:11 -0400 (Fri, 17 Aug 2007) $=0A= * $Rev: 2759 $=0A= *=0A= * Version: 1.1.2=0A= *=0A= * Requires: jQuery 1.1.3+=0A= */=0A= =0A= (function($){=0A= =0A= // store a copy of the core height and width methods=0A= var height =3D $.fn.height,=0A= width =3D $.fn.width;=0A= =0A= $.fn.extend({=0A= /**=0A= * If used on document, returns the document's height (innerHeight).=0A= * If used on window, returns the viewport's (window) height.=0A= * See core docs on height() to see what happens when used on an = element.=0A= *=0A= * @example $("#testdiv").height()=0A= * @result 200=0A= *=0A= * @example $(document).height()=0A= * @result 800=0A= *=0A= * @example $(window).height()=0A= * @result 400=0A= *=0A= * @name height=0A= * @type Number=0A= * @cat Plugins/Dimensions=0A= */=0A= height: function() {=0A= if ( !this[0] ) error();=0A= if ( this[0] =3D=3D window )=0A= if ( $.browser.opera || ($.browser.safari && = parseInt($.browser.version) > 520) )=0A= return self.innerHeight - (($(document).height() > self.innerHeight) = ? getScrollbarWidth() : 0);=0A= else if ( $.browser.safari )=0A= return self.innerHeight;=0A= else=0A= return $.boxModel && = document.documentElement.clientHeight || document.body.clientHeight;=0A= =0A= if ( this[0] =3D=3D document ) =0A= return Math.max( ($.boxModel && document.documentElement.scrollHeight = || document.body.scrollHeight), document.body.offsetHeight );=0A= =0A= return height.apply(this, arguments);=0A= },=0A= =0A= /**=0A= * If used on document, returns the document's width (innerWidth).=0A= * If used on window, returns the viewport's (window) width.=0A= * See core docs on width() to see what happens when used on an element.=0A= *=0A= * @example $("#testdiv").width()=0A= * @result 200=0A= *=0A= * @example $(document).width()=0A= * @result 800=0A= *=0A= * @example $(window).width()=0A= * @result 400=0A= *=0A= * @name width=0A= * @type Number=0A= * @cat Plugins/Dimensions=0A= */=0A= width: function() {=0A= if (!this[0]) error();=0A= if ( this[0] =3D=3D window )=0A= if ( $.browser.opera || ($.browser.safari && = parseInt($.browser.version) > 520) )=0A= return self.innerWidth - (($(document).width() > self.innerWidth) ? = getScrollbarWidth() : 0);=0A= else if ( $.browser.safari )=0A= return self.innerWidth;=0A= else=0A= return $.boxModel && = document.documentElement.clientWidth || document.body.clientWidth;=0A= =0A= if ( this[0] =3D=3D document )=0A= if ($.browser.mozilla) {=0A= // mozilla reports scrollWidth and offsetWidth as the same=0A= var scrollLeft =3D self.pageXOffset;=0A= self.scrollTo(99999999, self.pageYOffset);=0A= var scrollWidth =3D self.pageXOffset;=0A= self.scrollTo(scrollLeft, self.pageYOffset);=0A= return document.body.offsetWidth + scrollWidth;=0A= }=0A= else =0A= return Math.max( (($.boxModel && !$.browser.safari) && = document.documentElement.scrollWidth || document.body.scrollWidth), = document.body.offsetWidth );=0A= =0A= return width.apply(this, arguments);=0A= },=0A= =0A= /**=0A= * Gets the inner height (excludes the border and includes the padding) = for the first matched element.=0A= * If used on document, returns the document's height (innerHeight).=0A= * If used on window, returns the viewport's (window) height.=0A= *=0A= * @example $("#testdiv").innerHeight()=0A= * @result 210=0A= *=0A= * @name innerHeight=0A= * @type Number=0A= * @cat Plugins/Dimensions=0A= */=0A= innerHeight: function() {=0A= if (!this[0]) error();=0A= return this[0] =3D=3D window || this[0] =3D=3D document ?=0A= this.height() :=0A= this.is(':visible') ?=0A= this[0].offsetHeight - num(this, 'borderTopWidth') - num(this, = 'borderBottomWidth') :=0A= this.height() + num(this, 'paddingTop') + num(this, 'paddingBottom');=0A= },=0A= =0A= /**=0A= * Gets the inner width (excludes the border and includes the padding) = for the first matched element.=0A= * If used on document, returns the document's width (innerWidth).=0A= * If used on window, returns the viewport's (window) width.=0A= *=0A= * @example $("#testdiv").innerWidth()=0A= * @result 210=0A= *=0A= * @name innerWidth=0A= * @type Number=0A= * @cat Plugins/Dimensions=0A= */=0A= innerWidth: function() {=0A= if (!this[0]) error();=0A= return this[0] =3D=3D window || this[0] =3D=3D document ?=0A= this.width() :=0A= this.is(':visible') ?=0A= this[0].offsetWidth - num(this, 'borderLeftWidth') - num(this, = 'borderRightWidth') :=0A= this.width() + num(this, 'paddingLeft') + num(this, 'paddingRight');=0A= },=0A= =0A= /**=0A= * Gets the outer height (includes the border and padding) for the = first matched element.=0A= * If used on document, returns the document's height (innerHeight).=0A= * If used on window, returns the viewport's (window) height.=0A= *=0A= * The margin can be included in the calculation by passing an options = map with margin=0A= * set to true.=0A= *=0A= * @example $("#testdiv").outerHeight()=0A= * @result 220=0A= *=0A= * @example $("#testdiv").outerHeight({ margin: true })=0A= * @result 240=0A= *=0A= * @name outerHeight=0A= * @type Number=0A= * @param Map options Optional settings to configure the way the outer = height is calculated.=0A= * @cat Plugins/Dimensions=0A= */=0A= outerHeight: function(options) {=0A= if (!this[0]) error();=0A= options =3D $.extend({ margin: false }, options || {});=0A= return this[0] =3D=3D window || this[0] =3D=3D document ?=0A= this.height() :=0A= this.is(':visible') ?=0A= this[0].offsetHeight + (options.margin ? (num(this, 'marginTop') + = num(this, 'marginBottom')) : 0) :=0A= this.height() =0A= + num(this,'borderTopWidth') + num(this, 'borderBottomWidth') =0A= + num(this, 'paddingTop') + num(this, 'paddingBottom')=0A= + (options.margin ? (num(this, 'marginTop') + num(this, = 'marginBottom')) : 0);=0A= },=0A= =0A= /**=0A= * Gets the outer width (including the border and padding) for the = first matched element.=0A= * If used on document, returns the document's width (innerWidth).=0A= * If used on window, returns the viewport's (window) width.=0A= *=0A= * The margin can be included in the calculation by passing an options = map with margin=0A= * set to true.=0A= *=0A= * @example $("#testdiv").outerWidth()=0A= * @result 1000=0A= *=0A= * @example $("#testdiv").outerWidth({ margin: true })=0A= * @result 1020=0A= * =0A= * @name outerHeight=0A= * @type Number=0A= * @param Map options Optional settings to configure the way the outer = width is calculated.=0A= * @cat Plugins/Dimensions=0A= */=0A= outerWidth: function(options) {=0A= if (!this[0]) error();=0A= options =3D $.extend({ margin: false }, options || {});=0A= return this[0] =3D=3D window || this[0] =3D=3D document ?=0A= this.width() :=0A= this.is(':visible') ?=0A= this[0].offsetWidth + (options.margin ? (num(this, 'marginLeft') + = num(this, 'marginRight')) : 0) :=0A= this.width() =0A= + num(this, 'borderLeftWidth') + num(this, 'borderRightWidth') =0A= + num(this, 'paddingLeft') + num(this, 'paddingRight')=0A= + (options.margin ? (num(this, 'marginLeft') + num(this, = 'marginRight')) : 0);=0A= },=0A= =0A= /**=0A= * Gets how many pixels the user has scrolled to the right (scrollLeft).=0A= * Works on containers with overflow: auto and window/document.=0A= *=0A= * @example $(window).scrollLeft()=0A= * @result 100=0A= *=0A= * @example $(document).scrollLeft()=0A= * @result 100=0A= * =0A= * @example $("#testdiv").scrollLeft()=0A= * @result 100=0A= *=0A= * @name scrollLeft=0A= * @type Number=0A= * @cat Plugins/Dimensions=0A= */=0A= /**=0A= * Sets the scrollLeft property for each element and continues the = chain.=0A= * Works on containers with overflow: auto and window/document.=0A= *=0A= * @example $(window).scrollLeft(100).scrollLeft()=0A= * @result 100=0A= * =0A= * @example $(document).scrollLeft(100).scrollLeft()=0A= * @result 100=0A= *=0A= * @example $("#testdiv").scrollLeft(100).scrollLeft()=0A= * @result 100=0A= *=0A= * @name scrollLeft=0A= * @param Number value A positive number representing the desired = scrollLeft.=0A= * @type jQuery=0A= * @cat Plugins/Dimensions=0A= */=0A= scrollLeft: function(val) {=0A= if (!this[0]) error();=0A= if ( val !=3D undefined )=0A= // set the scroll left=0A= return this.each(function() {=0A= if (this =3D=3D window || this =3D=3D document)=0A= window.scrollTo( val, $(window).scrollTop() );=0A= else=0A= this.scrollLeft =3D val;=0A= });=0A= =0A= // return the scroll left offest in pixels=0A= if ( this[0] =3D=3D window || this[0] =3D=3D document )=0A= return self.pageXOffset ||=0A= $.boxModel && document.documentElement.scrollLeft ||=0A= document.body.scrollLeft;=0A= =0A= return this[0].scrollLeft;=0A= },=0A= =0A= /**=0A= * Gets how many pixels the user has scrolled to the bottom (scrollTop).=0A= * Works on containers with overflow: auto and window/document.=0A= *=0A= * @example $(window).scrollTop()=0A= * @result 100=0A= *=0A= * @example $(document).scrollTop()=0A= * @result 100=0A= * =0A= * @example $("#testdiv").scrollTop()=0A= * @result 100=0A= *=0A= * @name scrollTop=0A= * @type Number=0A= * @cat Plugins/Dimensions=0A= */=0A= /**=0A= * Sets the scrollTop property for each element and continues the chain.=0A= * Works on containers with overflow: auto and window/document.=0A= *=0A= * @example $(window).scrollTop(100).scrollTop()=0A= * @result 100=0A= * =0A= * @example $(document).scrollTop(100).scrollTop()=0A= * @result 100=0A= *=0A= * @example $("#testdiv").scrollTop(100).scrollTop()=0A= * @result 100=0A= *=0A= * @name scrollTop=0A= * @param Number value A positive number representing the desired = scrollTop.=0A= * @type jQuery=0A= * @cat Plugins/Dimensions=0A= */=0A= scrollTop: function(val) {=0A= if (!this[0]) error();=0A= if ( val !=3D undefined )=0A= // set the scroll top=0A= return this.each(function() {=0A= if (this =3D=3D window || this =3D=3D document)=0A= window.scrollTo( $(window).scrollLeft(), val );=0A= else=0A= this.scrollTop =3D val;=0A= });=0A= =0A= // return the scroll top offset in pixels=0A= if ( this[0] =3D=3D window || this[0] =3D=3D document )=0A= return self.pageYOffset ||=0A= $.boxModel && document.documentElement.scrollTop ||=0A= document.body.scrollTop;=0A= =0A= return this[0].scrollTop;=0A= },=0A= =0A= /** =0A= * Gets the top and left positioned offset in pixels.=0A= * The positioned offset is the offset between a positioned=0A= * parent and the element itself.=0A= *=0A= * For accurate calculations make sure to use pixel values for margins, = borders and padding.=0A= *=0A= * @example $("#testdiv").position()=0A= * @result { top: 100, left: 100 }=0A= *=0A= * @example var position =3D {};=0A= * $("#testdiv").position(position)=0A= * @result position =3D { top: 100, left: 100 }=0A= * =0A= * @name position=0A= * @param Object returnObject Optional An object to store the return = value in, so as not to break the chain. If passed in the=0A= * chain will not be broken and the result = will be assigned to this object.=0A= * @type Object=0A= * @cat Plugins/Dimensions=0A= */=0A= position: function(returnObject) {=0A= return this.offset({ margin: false, scroll: false, relativeTo: = this.offsetParent() }, returnObject);=0A= },=0A= =0A= /**=0A= * Gets the location of the element in pixels from the top left corner = of the viewport.=0A= * The offset method takes an optional map of key value pairs to = configure the way=0A= * the offset is calculated. Here are the different options.=0A= *=0A= * (Boolean) margin - Should the margin of the element be included in = the calculations? True by default.=0A= * (Boolean) border - Should the border of the element be included in = the calculations? False by default. =0A= * (Boolean) padding - Should the padding of the element be included in = the calculations? False by default. =0A= * (Boolean) scroll - Should the scroll offsets of the parent elements = be included in the calculations? True by default.=0A= * When true it adds the total scroll offsets of all = parents to the total offset and also adds two=0A= * properties to the returned object, scrollTop and = scrollLeft.=0A= * (Boolean) lite - When true it will use the offsetLite method instead = of the full-blown, slower offset method. False by default.=0A= * Only use this when margins, borders and padding = calculations don't matter.=0A= * (HTML Element) relativeTo - This should be a parent of the element = and should have position (like absolute or relative).=0A= * It will retreive the offset relative to = this parent element. By default it is the body element.=0A= *=0A= * Also an object can be passed as the second paramater to=0A= * catch the value of the return and continue the chain.=0A= *=0A= * For accurate calculations make sure to use pixel values for margins, = borders and padding.=0A= * =0A= * Known issues:=0A= * - Issue: A div positioned relative or static without any content = before it and its parent will report an offsetTop of 0 in Safari=0A= * Workaround: Place content before the relative div ... and set = height and width to 0 and overflow to hidden=0A= *=0A= * @example $("#testdiv").offset()=0A= * @result { top: 100, left: 100, scrollTop: 10, scrollLeft: 10 }=0A= *=0A= * @example $("#testdiv").offset({ scroll: false })=0A= * @result { top: 90, left: 90 }=0A= *=0A= * @example var offset =3D {}=0A= * $("#testdiv").offset({ scroll: false }, offset)=0A= * @result offset =3D { top: 90, left: 90 }=0A= *=0A= * @name offset=0A= * @param Map options Optional settings to configure the way the offset = is calculated.=0A= * @param Object returnObject An object to store the return value in, = so as not to break the chain. If passed in the=0A= * chain will not be broken and the result = will be assigned to this object.=0A= * @type Object=0A= * @cat Plugins/Dimensions=0A= */=0A= offset: function(options, returnObject) {=0A= if (!this[0]) error();=0A= var x =3D 0, y =3D 0, sl =3D 0, st =3D 0,=0A= elem =3D this[0], parent =3D this[0], op, parPos, elemPos =3D = $.css(elem, 'position'),=0A= mo =3D $.browser.mozilla, ie =3D $.browser.msie, oa =3D = $.browser.opera,=0A= sf =3D $.browser.safari, sf3 =3D $.browser.safari && = parseInt($.browser.version) > 520,=0A= absparent =3D false, relparent =3D false, =0A= options =3D $.extend({ margin: true, border: false, padding: = false, scroll: true, lite: false, relativeTo: document.body }, options = || {});=0A= =0A= // Use offsetLite if lite option is true=0A= if (options.lite) return this.offsetLite(options, returnObject);=0A= // Get the HTMLElement if relativeTo is a jquery collection=0A= if (options.relativeTo.jquery) options.relativeTo =3D = options.relativeTo[0];=0A= =0A= if (elem.tagName =3D=3D 'BODY') {=0A= // Safari 2 is the only one to get offsetLeft and offsetTop = properties of the body "correct"=0A= // Except they all mess up when the body is positioned absolute or = relative=0A= x =3D elem.offsetLeft;=0A= y =3D elem.offsetTop;=0A= // Mozilla ignores margin and subtracts border from body element=0A= if (mo) {=0A= x +=3D num(elem, 'marginLeft') + (num(elem, 'borderLeftWidth')*2);=0A= y +=3D num(elem, 'marginTop') + (num(elem, 'borderTopWidth') *2);=0A= } else=0A= // Opera ignores margin=0A= if (oa) {=0A= x +=3D num(elem, 'marginLeft');=0A= y +=3D num(elem, 'marginTop');=0A= } else=0A= // IE does not add the border in Standards Mode=0A= if ((ie && jQuery.boxModel)) {=0A= x +=3D num(elem, 'borderLeftWidth');=0A= y +=3D num(elem, 'borderTopWidth');=0A= } else=0A= // Safari 3 doesn't not include border or margin=0A= if (sf3) {=0A= x +=3D num(elem, 'marginLeft') + num(elem, 'borderLeftWidth');=0A= y +=3D num(elem, 'marginTop') + num(elem, 'borderTopWidth');=0A= }=0A= } else {=0A= do {=0A= parPos =3D $.css(parent, 'position');=0A= =0A= x +=3D parent.offsetLeft;=0A= y +=3D parent.offsetTop;=0A= =0A= // Mozilla and IE do not add the border=0A= // Mozilla adds the border for table cells=0A= if ((mo && !parent.tagName.match(/^t[d|h]$/i)) || ie || sf3) {=0A= // add borders to offset=0A= x +=3D num(parent, 'borderLeftWidth');=0A= y +=3D num(parent, 'borderTopWidth');=0A= =0A= // Mozilla does not include the border on body if an element isn't = positioned absolute and is without an absolute parent=0A= if (mo && parPos =3D=3D 'absolute') absparent =3D true;=0A= // IE does not include the border on the body if an element is = position static and without an absolute or relative parent=0A= if (ie && parPos =3D=3D 'relative') relparent =3D true;=0A= }=0A= =0A= op =3D parent.offsetParent || document.body;=0A= if (options.scroll || mo) {=0A= do {=0A= if (options.scroll) {=0A= // get scroll offsets=0A= sl +=3D parent.scrollLeft;=0A= st +=3D parent.scrollTop;=0A= }=0A= =0A= // Opera sometimes incorrectly reports scroll offset for elements = with display set to table-row or inline=0A= if (oa && ($.css(parent, 'display') || = '').match(/table-row|inline/)) {=0A= sl =3D sl - ((parent.scrollLeft =3D=3D parent.offsetLeft) ? = parent.scrollLeft : 0);=0A= st =3D st - ((parent.scrollTop =3D=3D parent.offsetTop) ? = parent.scrollTop : 0);=0A= }=0A= =0A= // Mozilla does not add the border for a parent that has overflow = set to anything but visible=0A= if (mo && parent !=3D elem && $.css(parent, 'overflow') !=3D = 'visible') {=0A= x +=3D num(parent, 'borderLeftWidth');=0A= y +=3D num(parent, 'borderTopWidth');=0A= }=0A= =0A= parent =3D parent.parentNode;=0A= } while (parent !=3D op);=0A= }=0A= parent =3D op;=0A= =0A= // exit the loop if we are at the relativeTo option but not if it is = the body or html tag=0A= if (parent =3D=3D options.relativeTo && !(parent.tagName =3D=3D = 'BODY' || parent.tagName =3D=3D 'HTML')) {=0A= // Mozilla does not add the border for a parent that has overflow = set to anything but visible=0A= if (mo && parent !=3D elem && $.css(parent, 'overflow') !=3D = 'visible') {=0A= x +=3D num(parent, 'borderLeftWidth');=0A= y +=3D num(parent, 'borderTopWidth');=0A= }=0A= // Safari 2 and opera includes border on positioned parents=0A= if ( ((sf && !sf3) || oa) && parPos !=3D 'static' ) {=0A= x -=3D num(op, 'borderLeftWidth');=0A= y -=3D num(op, 'borderTopWidth');=0A= }=0A= break;=0A= }=0A= if (parent.tagName =3D=3D 'BODY' || parent.tagName =3D=3D 'HTML') {=0A= // Safari 2 and IE Standards Mode doesn't add the body margin for = elments positioned with static or relative=0A= if (((sf && !sf3) || (ie && $.boxModel)) && elemPos !=3D 'absolute' = && elemPos !=3D 'fixed') {=0A= x +=3D num(parent, 'marginLeft');=0A= y +=3D num(parent, 'marginTop');=0A= }=0A= // Safari 3 does not include the border on body=0A= // Mozilla does not include the border on body if an element isn't = positioned absolute and is without an absolute parent=0A= // IE does not include the border on the body if an element is = positioned static and without an absolute or relative parent=0A= if ( sf3 || (mo && !absparent && elemPos !=3D 'fixed') || =0A= (ie && elemPos =3D=3D 'static' && !relparent) ) {=0A= x +=3D num(parent, 'borderLeftWidth');=0A= y +=3D num(parent, 'borderTopWidth');=0A= }=0A= break; // Exit the loop=0A= }=0A= } while (parent);=0A= }=0A= =0A= var returnValue =3D handleOffsetReturn(elem, options, x, y, sl, st);=0A= =0A= if (returnObject) { $.extend(returnObject, returnValue); return this; }=0A= else { return returnValue; }=0A= },=0A= =0A= /**=0A= * Gets the location of the element in pixels from the top left corner = of the viewport.=0A= * This method is much faster than offset but not as accurate when = borders and margins are=0A= * on the element and/or its parents. This method can be invoked=0A= * by setting the lite option to true in the offset method.=0A= * The offsetLite method takes an optional map of key value pairs to = configure the way=0A= * the offset is calculated. Here are the different options.=0A= *=0A= * (Boolean) margin - Should the margin of the element be included in = the calculations? True by default.=0A= * (Boolean) border - Should the border of the element be included in = the calculations? False by default. =0A= * (Boolean) padding - Should the padding of the element be included in = the calcuations? False by default. =0A= * (Boolean) scroll - Sould the scroll offsets of the parent elements = be included int he calculations? True by default.=0A= * When true it adds the total scroll offsets of all = parents to the total offset and also adds two=0A= * properties to the returned object, scrollTop and = scrollLeft.=0A= * (HTML Element) relativeTo - This should be a parent of the element = and should have position (like absolute or relative).=0A= * It will retreive the offset relative to = this parent element. By default it is the body element.=0A= *=0A= * @name offsetLite=0A= * @param Map options Optional settings to configure the way the offset = is calculated.=0A= * @param Object returnObject An object to store the return value in, = so as not to break the chain. If passed in the=0A= * chain will not be broken and the result = will be assigned to this object.=0A= * @type Object=0A= * @cat Plugins/Dimensions=0A= */=0A= offsetLite: function(options, returnObject) {=0A= if (!this[0]) error();=0A= var x =3D 0, y =3D 0, sl =3D 0, st =3D 0, parent =3D this[0], = offsetParent, =0A= options =3D $.extend({ margin: true, border: false, padding: = false, scroll: true, relativeTo: document.body }, options || {});=0A= =0A= // Get the HTMLElement if relativeTo is a jquery collection=0A= if (options.relativeTo.jquery) options.relativeTo =3D = options.relativeTo[0];=0A= =0A= do {=0A= x +=3D parent.offsetLeft;=0A= y +=3D parent.offsetTop;=0A= =0A= offsetParent =3D parent.offsetParent || document.body;=0A= if (options.scroll) {=0A= // get scroll offsets=0A= do {=0A= sl +=3D parent.scrollLeft;=0A= st +=3D parent.scrollTop;=0A= parent =3D parent.parentNode;=0A= } while(parent !=3D offsetParent);=0A= }=0A= parent =3D offsetParent;=0A= } while (parent && parent.tagName !=3D 'BODY' && parent.tagName !=3D = 'HTML' && parent !=3D options.relativeTo);=0A= =0A= var returnValue =3D handleOffsetReturn(this[0], options, x, y, sl, st);=0A= =0A= if (returnObject) { $.extend(returnObject, returnValue); return this; }=0A= else { return returnValue; }=0A= },=0A= =0A= /**=0A= * Returns a jQuery collection with the positioned parent of =0A= * the first matched element. This is the first parent of =0A= * the element that has position (as in relative or absolute).=0A= *=0A= * @name offsetParent=0A= * @type jQuery=0A= * @cat Plugins/Dimensions=0A= */=0A= offsetParent: function() {=0A= if (!this[0]) error();=0A= var offsetParent =3D this[0].offsetParent;=0A= while ( offsetParent && (offsetParent.tagName !=3D 'BODY' && = $.css(offsetParent, 'position') =3D=3D 'static') )=0A= offsetParent =3D offsetParent.offsetParent;=0A= return $(offsetParent);=0A= }=0A= });=0A= =0A= /**=0A= * Throws an error message when no elements are in the jQuery collection=0A= * @private=0A= */=0A= var error =3D function() {=0A= throw "Dimensions: jQuery collection is empty";=0A= };=0A= =0A= /**=0A= * Handles converting a CSS Style into an Integer.=0A= * @private=0A= */=0A= var num =3D function(el, prop) {=0A= return parseInt($.css(el.jquery?el[0]:el,prop))||0;=0A= };=0A= =0A= /**=0A= * Handles the return value of the offset and offsetLite methods.=0A= * @private=0A= */=0A= var handleOffsetReturn =3D function(elem, options, x, y, sl, st) {=0A= if ( !options.margin ) {=0A= x -=3D num(elem, 'marginLeft');=0A= y -=3D num(elem, 'marginTop');=0A= }=0A= =0A= // Safari and Opera do not add the border for the element=0A= if ( options.border && (($.browser.safari && = parseInt($.browser.version) < 520) || $.browser.opera) ) {=0A= x +=3D num(elem, 'borderLeftWidth');=0A= y +=3D num(elem, 'borderTopWidth');=0A= } else if ( !options.border && !(($.browser.safari && = parseInt($.browser.version) < 520) || $.browser.opera) ) {=0A= x -=3D num(elem, 'borderLeftWidth');=0A= y -=3D num(elem, 'borderTopWidth');=0A= }=0A= =0A= if ( options.padding ) {=0A= x +=3D num(elem, 'paddingLeft');=0A= y +=3D num(elem, 'paddingTop');=0A= }=0A= =0A= // do not include scroll offset on the element ... opera sometimes = reports scroll offset as actual offset=0A= if ( options.scroll && (!$.browser.opera || elem.offsetLeft !=3D = elem.scrollLeft && elem.offsetTop !=3D elem.scrollLeft) ) {=0A= sl -=3D elem.scrollLeft;=0A= st -=3D elem.scrollTop;=0A= }=0A= =0A= return options.scroll ? { top: y - st, left: x - sl, scrollTop: st, = scrollLeft: sl }=0A= : { top: y, left: x };=0A= };=0A= =0A= /**=0A= * Gets the width of the OS scrollbar=0A= * @private=0A= */=0A= var scrollbarWidth =3D 0;=0A= var getScrollbarWidth =3D function() {=0A= if (!scrollbarWidth) {=0A= var testEl =3D $('
')=0A= .css({=0A= width: 100,=0A= height: 100,=0A= overflow: 'auto',=0A= position: 'absolute',=0A= top: -1000,=0A= left: -1000=0A= })=0A= .appendTo('body');=0A= scrollbarWidth =3D 100 - testEl=0A= .append('
')=0A= .find('div')=0A= .css({=0A= width: '100%',=0A= height: 200=0A= })=0A= .width();=0A= testEl.remove();=0A= }=0A= return scrollbarWidth;=0A= };=0A= =0A= })(jQuery); ------=_NextPart_000_0000_01CAAE48.8D627A00 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://cache.finn.no/clientscript/lib/jquery.dropshadow.js /*=0A= VERSION: Drop Shadow jQuery Plugin 1.6 12-13-2007=0A= =0A= REQUIRES: jquery.js (1.2.1 or later) and jquery.dimensions.js=0A= =0A= SYNTAX: $(selector).dropShadow(options); // Creates new drop shadows=0A= $(selector).redrawShadow(); // Redraws shadows on elements=0A= $(selector).removeShadow(); // Removes shadows from elements=0A= $(selector).shadowId(); // Returns an existing shadow's ID=0A= =0A= OPTIONS:=0A= =0A= left : integer (default =3D 4)=0A= top : integer (default =3D 4)=0A= blur : integer (default =3D 2)=0A= opacity : decimal (default =3D 0.5)=0A= color : string (default =3D "black")=0A= swap : boolean (default =3D false)=0A= =0A= The left and top parameters specify the distance and direction, in = pixels, to=0A= offset the shadow. Zero values position the shadow directly behind the = element.=0A= Positive values shift the shadow to the right and down, while negative = values =0A= shift the shadow to the left and up.=0A= =0A= The blur parameter specifies the spread, or dispersion, of the shadow. = Zero =0A= produces a sharp shadow, one or two produces a normal shadow, and three = or four=0A= produces a softer shadow. Higher values increase the processing load.=0A= =0A= The opacity parameter should be a decimal value, usually less than one. = You can=0A= use a value higher than one in special situations, e.g. with extreme = blurring. =0A= =0A= Color is specified in the usual manner, with a color name or hex value. = The=0A= color parameter does not apply with transparent images.=0A= =0A= The swap parameter reverses the stacking order of the original and the = shadow.=0A= This can be used for special effects, like an embossed or engraved look.=0A= =0A= EXPLANATION:=0A= =0A= This jQuery plug-in adds soft drop shadows behind page elements. It is = only=0A= intended for adding a few drop shadows to mostly stationary objects, = like a=0A= page heading, a photo, or content containers.=0A= =0A= The shadows it creates are not bound to the original elements, so they = won't=0A= move or change size automatically if the original elements change. A = window=0A= resize event listener is assigned, which should re-align the shadows in = many=0A= cases, but if the elements otherwise move or resize you will have to = handle=0A= those events manually. Shadows can be redrawn with the redrawShadow() = method=0A= or removed with the removeShadow() method. The redrawShadow() method = uses the=0A= same options used to create the original shadow. If you want to change = the=0A= options, you should remove the shadow first and then create a new = shadow.=0A= =0A= The dropShadow method returns a jQuery collection of the new shadow(s). = If=0A= further manipulation is required, you can store it in a variable like = this:=0A= =0A= var myShadow =3D $("#myElement").dropShadow();=0A= =0A= You can also read the ID of the shadow from the original element at a = later=0A= time. To get a shadow's ID, either read the shadowId attribute of the=0A= original element or call the shadowId() method. For example:=0A= =0A= var myShadowId =3D $("#myElement").attr("shadowId"); or=0A= var myShadowId =3D $("#myElement").shadowId();=0A= =0A= If the original element does not already have an ID assigned, a random = ID will=0A= be generated for the shadow. However, if the original does have an ID, = the =0A= shadow's ID will be the original ID and "_dropShadow". For example, if = the=0A= element's ID is "myElement", the shadow's ID would be = "myElement_dropShadow".=0A= =0A= If you have a long piece of text and the user resizes the window so = that the=0A= text wraps or unwraps, the shape of the text changes and the words are = no=0A= longer in the same positions. In that case, you can either preset the = height=0A= and width, so that it becomes a fixed box, or you can shadow each word=0A= separately, like this:=0A= =0A=

Your Page Title

=0A= =0A= $("h1 span").dropShadow();=0A= =0A= The dropShadow method attempts to determine whether the selected = elements have=0A= transparent backgrounds. If you want to shadow the content inside an = element,=0A= like text or a transparent image, it must not have a background-color or=0A= background-image style. If the element has a solid background it will = create a=0A= rectangular shadow around the outside box.=0A= =0A= The shadow elements are positioned absolutely one layer below the = original =0A= element, which is positioned relatively (unless it's already absolute).=0A= =0A= *** All shadows have the "dropShadow" class, for selecting with CSS or = jQuery.=0A= =0A= ISSUES:=0A= =0A= 1) Limited styling of shadowed elements by ID. Because IDs must be = unique,=0A= and the shadows have their own ID, styles applied by ID won't = transfer=0A= to the shadows. Instead, style elements by class or use inline = styles.=0A= 2) Sometimes shadows don't align properly. Elements may need to be = wrapped=0A= in container elements, margins or floats changed, etc. or you may = just =0A= have to tweak the left and top offsets to get them to align. For = example,=0A= with draggable objects, you have to wrap them inside two divs. Make = the =0A= outer div draggable and set the inner div's position to relative. = Then =0A= you can create a shadow on the element inside the inner div.=0A= 3) If the user changes font sizes it will throw the shadows off. = Browsers =0A= do not expose an event for font size changes. The only known way to =0A= detect a user font size change is to embed an invisible text element = and=0A= then continuously poll for changes in size.=0A= 4) Safari support is shaky, and may require even more tweaks/wrappers, = etc.=0A= =0A= The bottom line is that this is a gimick effect, not PFM, and if you = push it=0A= too hard or expect it to work in every possible situation on every = browser,=0A= you will be disappointed. Use it sparingly, and don't use it for = anything =0A= critical. Otherwise, have fun with it!=0A= =0A= AUTHOR: Larry Stevens (McLars@eyebulb.com) This work is in the public = domain,=0A= and it is not supported in any way. Use it at your own risk.=0A= */=0A= =0A= =0A= (function($){=0A= =0A= var dropShadowZindex =3D 1; //z-index counter=0A= =0A= $.fn.dropShadow =3D function(options)=0A= {=0A= // Default options=0A= var opt =3D $.extend({=0A= left: 4,=0A= top: 4,=0A= blur: 2,=0A= opacity: .5,=0A= color: "black",=0A= swap: false=0A= }, options);=0A= var jShadows =3D $([]); //empty jQuery collection=0A= =0A= // Loop through original elements=0A= this.not(".dropShadow").each(function()=0A= {=0A= var jthis =3D $(this);=0A= var shadows =3D [];=0A= var blur =3D (opt.blur <=3D 0) ? 0 : opt.blur;=0A= var opacity =3D (blur =3D=3D 0) ? opt.opacity : opt.opacity / (blur * = 8);=0A= var zOriginal =3D (opt.swap) ? dropShadowZindex : dropShadowZindex + = 1;=0A= var zShadow =3D (opt.swap) ? dropShadowZindex + 1 : dropShadowZindex;=0A= =0A= // Create ID for shadow=0A= var shadowId;=0A= if (this.id) {=0A= shadowId =3D this.id + "_dropShadow";=0A= }=0A= else {=0A= shadowId =3D "ds" + (1 + Math.floor(9999 * Math.random()));=0A= }=0A= =0A= // Modify original element=0A= $.data(this, "shadowId", shadowId); //store id in expando=0A= $.data(this, "shadowOptions", options); //store options in expando=0A= jthis=0A= .attr("shadowId", shadowId)=0A= .css("zIndex", zOriginal);=0A= if (jthis.css("position") !=3D "absolute") {=0A= jthis.css({=0A= position: "relative",=0A= zoom: 1 //for IE layout=0A= });=0A= }=0A= =0A= // Create first shadow layer=0A= bgColor =3D jthis.css("backgroundColor");=0A= if (bgColor =3D=3D "rgba(0, 0, 0, 0)") bgColor =3D "transparent"; = //Safari=0A= if (bgColor !=3D "transparent" || jthis.css("backgroundImage") !=3D = "none" =0A= || this.nodeName =3D=3D "SELECT" =0A= || this.nodeName =3D=3D "INPUT"=0A= || this.nodeName =3D=3D "TEXTAREA") { =0A= shadows[0] =3D $("
")=0A= .css("background", opt.color); =0A= }=0A= else {=0A= shadows[0] =3D jthis=0A= .clone()=0A= .removeAttr("id")=0A= .removeAttr("name")=0A= .removeAttr("shadowId")=0A= .css("color", opt.color);=0A= }=0A= shadows[0]=0A= .addClass("dropShadow")=0A= .css({=0A= height: jthis.outerHeight(),=0A= left: blur,=0A= opacity: opacity,=0A= position: "absolute",=0A= top: blur,=0A= width: jthis.outerWidth(),=0A= zIndex: zShadow=0A= });=0A= =0A= // Create other shadow layers=0A= var layers =3D (8 * blur) + 1;=0A= for (i =3D 1; i < layers; i++) {=0A= shadows[i] =3D shadows[0].clone();=0A= }=0A= =0A= // Position layers=0A= var i =3D 1; =0A= var j =3D blur;=0A= while (j > 0) {=0A= shadows[i].css({left: j * 2, top: 0}); //top=0A= shadows[i + 1].css({left: j * 4, top: j * 2}); //right=0A= shadows[i + 2].css({left: j * 2, top: j * 4}); //bottom=0A= shadows[i + 3].css({left: 0, top: j * 2}); //left=0A= shadows[i + 4].css({left: j * 3, top: j}); //top-right=0A= shadows[i + 5].css({left: j * 3, top: j * 3}); //bottom-right=0A= shadows[i + 6].css({left: j, top: j * 3}); //bottom-left=0A= shadows[i + 7].css({left: j, top: j}); //top-left=0A= i +=3D 8;=0A= j--;=0A= }=0A= =0A= // Create container=0A= var divShadow =3D $("
")=0A= .attr("id", shadowId) =0A= .addClass("dropShadow")=0A= .css({=0A= left: jthis.position().left + opt.left - blur,=0A= marginTop: jthis.css("marginTop"),=0A= marginRight: jthis.css("marginRight"),=0A= marginBottom: jthis.css("marginBottom"),=0A= marginLeft: jthis.css("marginLeft"),=0A= position: "absolute",=0A= top: jthis.position().top + opt.top - blur,=0A= zIndex: zShadow=0A= });=0A= =0A= // Add layers to container =0A= for (i =3D 0; i < layers; i++) {=0A= divShadow.append(shadows[i]);=0A= }=0A= =0A= // Add container to DOM=0A= jthis.after(divShadow);=0A= =0A= // Add shadow to return set=0A= jShadows =3D jShadows.add(divShadow);=0A= =0A= // Re-align shadow on window resize=0A= $(window).resize(function()=0A= {=0A= try {=0A= divShadow.css({=0A= left: jthis.position().left + opt.left - blur,=0A= top: jthis.position().top + opt.top - blur=0A= });=0A= }=0A= catch(e){}=0A= });=0A= =0A= // Increment z-index counter=0A= dropShadowZindex +=3D 2;=0A= =0A= }); //end each=0A= =0A= return this.pushStack(jShadows);=0A= };=0A= =0A= =0A= $.fn.redrawShadow =3D function()=0A= {=0A= // Remove existing shadows=0A= this.removeShadow();=0A= =0A= // Draw new shadows=0A= return this.each(function()=0A= {=0A= var shadowOptions =3D $.data(this, "shadowOptions");=0A= $(this).dropShadow(shadowOptions);=0A= });=0A= };=0A= =0A= =0A= $.fn.removeShadow =3D function()=0A= {=0A= return this.each(function()=0A= {=0A= var shadowId =3D $(this).shadowId();=0A= $("div#" + shadowId).remove();=0A= });=0A= };=0A= =0A= =0A= $.fn.shadowId =3D function()=0A= {=0A= return $.data(this[0], "shadowId");=0A= };=0A= =0A= /* -- removed because it crashed IE when loading with ajax=0A= $(function() =0A= {=0A= // Suppress printing of shadows=0A= var noPrint =3D "";=0A= $("head").append(noPrint);=0A= });=0A= */=0A= =0A= })(jQuery); ------=_NextPart_000_0000_01CAAE48.8D627A00 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://cache.finn.no/clientscript/lib/jquery.autocomplete.js /*=0A= * Autocomplete - jQuery plugin 1.0 Alpha=0A= *=0A= * Copyright (c) 2007 Dylan Verheul, Dan G. Switzer, Anjesh Tuladhar, = J=F6rn Zaefferer=0A= *=0A= * Dual licensed under the MIT and GPL licenses:=0A= * http://www.opensource.org/licenses/mit-license.php=0A= * http://www.gnu.org/licenses/gpl.html=0A= *=0A= * Revision: $Id$=0A= *=0A= */=0A= =0A= /**=0A= * Provide autocomplete for text-inputs or textareas.=0A= *=0A= * Depends on dimensions plugin's offset method for correct positioning = of the select box and bgiframe plugin=0A= * to fix IE's problem with selects.=0A= *=0A= * @example $("#input_box").autocomplete("my_autocomplete_backend.php");=0A= * @before =0A= * @desc Autocomplete a text-input with remote data. For small to giant = datasets.=0A= *=0A= * When the user starts typing, a request is send to the specified = backend ("my_autocomplete_backend.php"),=0A= * with a GET parameter named q that contains the current value of the = input box and a paremeter "limit" with=0A= * the value specified for the max option.=0A= *=0A= * A value of "foo" would result in this request url: = my_autocomplete_backend.php?q=3Dfoo&limit=3D10=0A= *=0A= * The result must return with one value on each line. The result is = presented in the order=0A= * the backend sends it.=0A= *=0A= * @example $("#input_box").autocomplete(["Cologne", "Berlin", = "Munich"]);=0A= * @before =0A= * @desc Autcomplete a text-input with local data. For small datasets.=0A= *=0A= * @example $.getJSON("my_backend.php", function(data) {=0A= * $("#input_box").autocomplete(data);=0A= * });=0A= * @before =0A= * @desc Autcomplete a text-input with data received via AJAX. For small = to medium sized datasets.=0A= *=0A= * @example $("#mytextarea").autocomplete(["Cologne", "Berlin", = "Munich"], {=0A= * multiple: true=0A= * });=0A= * @before