Ganska snart efter att jag börjat med mina morgonkommentarer bytte jag från UL (alltså en punktlista) till OL (en numrerad lista) för att man skulle kunna hänvisa till en speciell kommentar i diskussionen. Då kunde man tex skriva ”kolla så fel ute @jocke är i #10 https://jardenberg.se/b/jardenberg-kommenterar-31-aug-2010-jjk/” – och så fick den som klickade sig in manuellt scrolla ner till kommentar nummer 10. Funkis, men inte så it.

Givetvis vill man ju använda ett ankare i URL:en så man kunde skriva ”kolla vilken briljant kommentar på https://jardenberg.se/b/jardenberg-kommenterar-31-aug-2010-jjk/#10” – och landa direkt på rätt ställe vid klicket.

Min plan var att nästa version av SharedItems2WP skulle stödja det, men i en diskussion på twitter idag växte en annan lösning fram. Och dagens hjälte är @mansj. Först lite försiktigt, men efter löfte om pilsner och kärlek kom en utfästelse.

Och nu ikväll kom ett mail. Gilla det här:

Det scriptet gör är att leta upp LI med rätt ordningsnummer inne i en OL inne i en div med id #content – allt enligt Thesis som du kör nu, och typ alla andra WP-teman.

När och om ett ankare med ett befintligt ID skickas in händer två saker:

  1. CSS-klassen “hereweare” läggs till på den LI som stämmer. Det kan du förstås enkelt ändra i scriptet. När jag testade hade jag bara “background-color: yellow” definierat på .hereweare.
  2. En window.scrollTo() hoppar ner till rätt LI.

Att känna till:

  1. Filen måste länkas in _efter_ att jQuery laddats i temat.
  2. Länkningen ska ske till postsidan, inte till förstasidan. Dvs https://jardenberg.se/b/jardenberg-kommenterar-31-aug-2010-jjk/#2 kommer att funka bra, men inte https://jardenberg.se/#2

Eftersom det är ankarlänkar så händer ju inget om du bara lägger till “#2” efter URL:en när sidan redan laddats. Gör en reload så ser du då vad som händer. Direktlänkar och klick på länkar med ankaret i kommer förstås att lira bra.

Här är filen: http://dl.dropbox.com/u/164449/hashnav.js

Visst är det helt enastående bra. #jjk blev genast ännu nyttigare. Internet, I kiss you. Och Måns Jonasson, en hink pilsner väntar dig.