Code:
/*
Sinnvollere Seitenlinks (Threaduebersicht)
Original von Abflussrohr - http://board.gulli.com/thread/972543
*/
var imgs = document.getElementsByTagName('img');
for (var i = 0; i < imgs.length; i++)
if (imgs[i].alt == 'Mehrseitiges Thema') {
var span = imgs[i].parentNode;
var oldim = span.innerHTML.match(/<img.*?src=".*?".*?alt="Mehrseitiges Thema".*?/i);
var as = span.getElementsByTagName('a');
for (var j = 0; j < as.length; j++)
if (as[j].innerHTML == 'Letzte Seite') {
var m;
if (m = as[j].href.match(/^(.*\/)(\d+)\/$/)) {
var c = '( '+oldim[0];
for (var k = 1; k <= 3; k++)
c += ' <a href="' + m[1] + (k>1?k+'/':'') + '">' + k + '</a>';
c += ' ... ';
for (var k = m[2] - 4; k <= m[2]; k++)
c += (k>m[2]-4?' ':'') + '<a href="' + m[1] + k + '/">' + k + '</a>';
c += ' )';
span.innerHTML = c;
}
break;
}
}
// Sinnvollere Seitenlinks (Threadansicht)
function build_nav_td(base,page,apage) {
if(page==-1) {
return '<td class="alt2">'+
'<span class="smallfont">...</span></td>';
}
if(page==apage) {
return '<td class="alt2">'+
'<span class="smallfont"><strong>'+
page+
'</strong></span></td>';
}
return '<td class="alt1">'+
'<a class="smallfont" href="'+
base+page+'/'+
'">'+page+'</a></td>';
}
var navs = document.getElementsByTagName("div");
for(var i=0;i<navs.length;i++) {
if(navs[i].className != 'pagenav')
continue;
var tr = navs[i].getElementsByTagName("tr")[0];
var nums = tr.innerHTML.match(/Seite (\d+) von (\d+)/);
var base = tr.getElementsByTagName("a")[0].href.match(/^(.*?\/(thread|forum)\/.*?\/)/);
if(!base)
continue;
else
base = base[1];
var new_content = '<td class="vbmenu_control" style="font-weight:normal;">Seite '+
nums[1]+' von '+nums[2]+'</td>';
if(nums[2]<14) {
for(var j=1;j<=nums[2];j++)
new_content += build_nav_td(base,j,nums[1]);
} else {
if(nums[1]<=6) {
for(var j=1;j<=8;j++)
new_content += build_nav_td(base,j,nums[1]);
new_content += build_nav_td(0,-1,0);
for(var j=nums[2]-3;j<=nums[2];j++)
new_content += build_nav_td(base,j,nums[1]);
} else if(nums[1]>=(nums[2]-6)) {
for(var j=1;j<=3;j++)
new_content += build_nav_td(base,j,nums[1]);
new_content += build_nav_td(0,-1,0);
for(var j=nums[2]-8;j<=nums[2];j++)
new_content += build_nav_td(base,j,nums[1]);
} else {
for(var j=1;j<=3;j++)
new_content += build_nav_td(base,j,nums[1]);
new_content += build_nav_td(0,-1,0);
for(var j=-2;j<=2;j++)
new_content += build_nav_td(base,parseInt(nums[1])+j,nums[1]);
new_content += build_nav_td(0,-1,0);
for(var j=nums[2]-2;j<=nums[2];j++)
new_content += build_nav_td(base,j,nums[1]);
}
}
tr.innerHTML = new_content;
}
Screenshots:


Mikl-Leitner will besseren Schutz...
Heute, 10:06 in gulli:news