Direkte Eingabe der Seitenzahl

21.12.2008 23:07
#1 Direkte Eingabe der Seitenzahl
St
Mitglied

Wollte mal fragen ob die Möglichkeit besteht eine direkte Seiteneingabe einzubinden , zB. wenn ein Forumbereich in kurzer Zeit mehrere Seiten 20-30 pro Tag hat. Damit man nicht immer jede einzelne Seite zurück klicken muss bis zum Anfang der neusten Seite


Gruss stefan


 Antworten

 Beitrag melden
22.12.2008 02:37
avatar  Vitalis
#2 RE: Direkte Eingabe der Seitenzahl
avatar
Profi

Ich denke nicht, denn der Link für die einzelnen Seiten wird automatisch intern generiert, und ist absolut abhängig von der eingegebenen Anzahl der Threads pro Seite, etc.


 Antworten

 Beitrag melden
17.01.2009 21:48
#3 RE: Direkte Eingabe der Seitenzahl
St
Mitglied

OK danke


 Antworten

 Beitrag melden
29.01.2009 09:47
avatar  Dome
#4 RE: Direkte Eingabe der Seitenzahl
Do
Mitglied

Die ist indirekt möglich.

Ein Beispiel:

Dieses Thema hat vier Seiten:
https://www.hpm-support.de/t515166f117691...r-nix-mehr.html

Wenn man nun zur Seite 3 will muss man folgendes ändern:
https://www.hpm-support.de/t515166f117691...ht-gar-nix-mehr-2.html

Immer gewünschte Seite -1 da mit der 0 angefangen wird zu zählen.


 Antworten

 Beitrag melden
15.02.2009 18:56
avatar  Olaf
#5 RE: Direkte Eingabe der Seitenzahl
Ol
Mitglied

Hallo

Ich habe mich mal mit diesem Wunsch beschäftigt,und das kam da heraus.
Es erscheint in den Threads oben Rechts im Balken ein zusätzlicher Schriftzug "Seitenzahl eingeben",wo man draufklickt und es öffnet sich dann ein Fenster,wo man die gewünschte Seitenzahl eingeben kann.Wird die Eingabe der Zahl der tatsächlichen Seitenzahl überschritten,erscheint eine Fehlermeldung "Ihre Eingaben waren nicht korrekt!" und man kann dann den Vorgang wiederholen.

Das Script ist in den Template Abschnitt "Thread - Flat" einzusetzen.

Stelle suchen:

   {{pages:now==true.end}}
{{pagestrenn.start}} | {{pagestrenn.end}}
{{pages.end}}
</div>
</td>
<td width=300 class="tnex" nowrap>
<div align="right">


<script language="JavaScript">
<!--
function Seitenzahl(){
Max="{{total_pages}}";Max ++
var Seite=prompt("Bitte Seitenzahl eingeben","");
if (Seite == "" || Seite == 0 || Seite > Max) {
alert("Ihre Eingaben waren nicht korrekt!");
}
else {
a="{{pages:link}}";
b= a.lastIndexOf("-");b++
c = a.slice(0, b);
c = c.concat((Seite -1), ".html")
location.href = c
}
}
//-->
</script>

<a href="javascript:Seitenzahl()"">Seitenzahl eingeben&nbsp;»</a>

{{nextpagelink==true.start}}<a href="{{nextpagelink}}">nächste Seite&nbsp;»</a>{{nextpagelink==true.end}}
</div>
</td>
</tr>
</table>
</td>
</tr>
{{morepages==true.end}}
{{nextpages.end}}
{{nextpages}}


Rot= Script einfügen
Grün=Habe ich geändert,dann ist die Anzeige mit "nächste Seite" nebeneinander


Gruß
Olaf

__________________________

http://138600.homepagemodules.de/

 Antworten

 Beitrag melden
15.02.2009 22:48 (zuletzt bearbeitet: 15.02.2009 22:49)
avatar  Vitalis
#6 RE: Direkte Eingabe der Seitenzahl
avatar
Profi
Interessanter Lösungsversuch, welcher leider nicht funktioniert ;-)

zudem wäre es für den User einfacher ein Inputfeld direkt zu sehen, um die Eingabe sofort vornehmen zu können.
Eine weitere Möglichkeit wäre es, mit einem Formular zu arbeiten.

Danke Olaf, das du dich um Lösungsvorschläge bemühst, wissen wir zu schätzen ;-)

 Antworten

 Beitrag melden
15.02.2009 22:56
avatar  Olaf ( Gast )
#7 RE: Direkte Eingabe der Seitenzahl
Ol
Olaf ( Gast )


Bei mir funktioniert das Script im FF und im IE einwandfrei.Ich würde nie Scripte in der Öffentlichkeit stellen,wenn ich sie nicht selber ausprobiert hätte!!!

Gruß
Olaf


 Antworten

 Beitrag melden
15.02.2009 23:00 (zuletzt bearbeitet: 15.02.2009 23:00)
avatar  Fabian
#8 RE: Direkte Eingabe der Seitenzahl
avatar
Xobor-Spezialist
Also das Script funktioniert bei mir (auch) einwandfrei. Sehr gut gelöst.

Servus
Fabian Klose


 Antworten

 Beitrag melden
15.02.2009 23:04 (zuletzt bearbeitet: 15.02.2009 23:11)
avatar  Vitalis
#9 RE: Direkte Eingabe der Seitenzahl
avatar
Profi
[edit] Klar, hätte ich sehen müssen - Absolut mein Fehler gewesen
Funktioniert einwandfrei.

 Antworten

 Beitrag melden
15.02.2009 23:26
avatar  Olaf ( Gast )
#10 RE: Direkte Eingabe der Seitenzahl
Ol
Olaf ( Gast )


Natürlich ist das Script noch ausbaufähig,z.B.mit einen aufklappbaren Zahlenfeld,aber so als "Rohling" kann man es jetzt schon gebrauchen.

Gruß
Olaf


 Antworten

 Beitrag melden
16.02.2009 18:02
#11 RE: Direkte Eingabe der Seitenzahl
avatar
Mitglied

Vielleicht mit einer For-Schleife:
Wenn in {{total_pages}} die Anzahl der Seiten geschrieben steht, müsste es doch in etwa so gehen:

for (i=0; i<{{total_pages}}; i++) {
DropDown.Add...
}


Den genauen Befehl um Elemente ins DropDown-Feld hinzuzufügen weiß ich grad nicht, aber so in etwa müsste dieser lauten.
Wenn dann etwas geklickt wurde, wird die URL +"-Zahl" im Menü aufgerufen.

Habe gerade keine Zeit, vielleicht später auch mal, wenns noch keiner gemacht hat.


 Antworten

 Beitrag melden
16.02.2009 20:46
avatar  Vitalis
#12 RE: Direkte Eingabe der Seitenzahl
avatar
Profi

Ein Dropdown ist bei einer geringen Seitenzahl nur teils hilfreich. Anders bei Themen mit sehr vielen Seiten - Das sprengt dir das Dropdown... irgendwann.

Hier ist es schon hilfreicher, nur ein Inputfeld zu haben, in dem man diese direkt eintragen kann.

Nur falls User Themen haben die die 1000 Seite übersteigen...
Oder würde gerne jemand scrollen?


 Antworten

 Beitrag melden
16.02.2009 21:38
#13 RE: Direkte Eingabe der Seitenzahl
avatar
Mitglied

Lieber scrollen anstatt sich mehrmals ein paar Seiten weiter zu klicken.
In ein Input-Feld können die User alles Mögliche eingeben, eine Überprüfung ist dann unbedingt erforderlich.
Außerdem sollte der User die Anzahl der Seiten kennen.
Aber das ist, denke ich, Geschmackssache.
Hier habe ich mal eine vorläufige Version des DropDown-Menüs.

Skript zwischen die Head-Tags (per Onload im Body aufrufen):

<script language="JavaScript" type="text/javascript">
<!--
function fillJumpMenu() {
var Sites = {{total_pages}}+1;
var pageUrl = "{{pages:link}}";
var UrlEnd = pageUrl.lastIndexOf("-");
UrlEnd++;
var newUrl = pageUrl.slice(0, UrlEnd);
var jumpMenu = document.getElementById("jumpMenu");
for (i=0; i<Sites; i++) {
var optn = document.createElement("option");
optn.text = (i+1);
optn.value = newUrl + i + ".html";
jumpMenu.options.add(optn);
}
}
function MM_jumpMenu(targ,selObj,restore){ //v3.0
eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
if (restore) selObj.selectedIndex=0;
}
//-->
</script>


Jump-Menü fürs Template (z.B. gleiche Stelle wie vorher):
<form name="JumpForm" id="JumpForm">
<select name="jumpMenu" id="jumpMenu" onchange="MM_jumpMenu('parent',this,0);this.form.jumpMenu.options[0].selected = true;" class="tarea" style="text-align:right;">
<option selected="selected" style="text-align:left;">Seite &raquo;</option>
</select>
</form>


 Antworten

 Beitrag melden
18.02.2009 23:08
avatar  Olaf ( Gast )
#14 RE: Direkte Eingabe der Seitenzahl
Ol
Olaf ( Gast )


Mit Eingabefeld:


<script language="JavaScript">
<!--
function Seitenzahl(eing){
Max="{{total_pages}}";Max ++
var Seite= eing.substring();
if (Seite == "" || Seite == 0 || Seite > Max) {
alert("Ihre Eingabe war nicht korrekt!");
}
else {
a="{{pages:link}}";
b= a.lastIndexOf("-");b++
c = a.slice(0, b);
c = c.concat((Seite -1), ".html")
location.href = c
}
}
//-->
</script>

<FORM>
Seitenzahl eingeben:
<INPUT size=3 class="Seiten">
<input type=button value="OK" Style="width:30px; font-size: 13px" onClick="Seitenzahl(form[0].value)">
</FORM>



CSS:


.Seiten {
color : #000000;
font-size : 10pt;
border-color : #3366ff;
background-color : #ccccff
}



Gruß
Olaf


 Antworten

 Beitrag melden
Bereits Mitglied?
Jetzt anmelden!
Mitglied werden?
Jetzt registrieren!