2016-05-10 4 views
-1

Ich habe eine Liste von Ereignissen (Klassen, Vorlesungen, etc.) in mysql gespeichert. Ich benutze PHP, um sie nach Datum in einem Div auf einer Webseite aufzulisten. Ich liste sechs Monate Ereignisse auf einmal auf und habe einen Knopf für jeden dieser Monate. Wenn eine dieser Tasten gedrückt wird, möchte ich, dass die Liste zum ersten Ereignis dieses Monats blättert. d. h. du drückst den Juniknopf und es wird zum ersten Ereignis im Juni geblättert. Ich bin neu in Javascript und jQuery, aber ich hätte gedacht, dass es ein Beispiel im Web finden könnte, aber meine Suche kam leer. Ich würde mich über Hinweise oder Vorschläge freuen. Vielen Dank!!!Scrollen Sie eine Liste von Ereignissen zum ersten Ereignis eines bestimmten Monats

+1

Normalerweise ist es am besten, einen Beispielcode für das zu liefern, was Sie gerade tun - insbesondere, wie Sie über jeden Punkt in MySQL iterieren, damit wir Sie genauer beraten können. –

Antwort

0

Es könnte hilfreich sein, wenn Sie Beispielcode bereitstellen würden. Ich bin nicht vertraut mit PHP, aber was Sie suchen, ist weitgehend HTML.

Ich nehme an, dass Sie in PHP eine Schleife haben (vielleicht eine while), die über jedes von MySQL zurückgegebene Element iteriert und dann die Ereignisdetails druckt. Hier

ist einiger Pseudocode

$monthOfLastEvent = null; 
for each result received from mysql 
    $monthOfThisEvent = ?; # You have to capture 'month' from the 'date', perhaps with substr 
    if($monthOfThisEvent != $monthOfLastEvent) { 
     print "<div id=\"month$monthOfThisEvent\"></div>"; # place a marker just before that event 
     $monthOfLastEvent = $monthOfThisEvent; 
    } 

    ... # here is where you print the event details 

} 

Solche Codes, wenn in PHP geschrieben, wird die Ausgabe von HTML wie

<div id="month1"></div> 
event in month 1 
event in month 1 
<div id="month2"></div> 
event in month 2 
etc 

Die Links zu Ihren Monaten werden

<a href="#month1">Month 1</a> 
<a href="#month2">Month 2</a> 
etc. 

Diese werden HTML-Lesezeichen oder HTML-Anker genannt. Im Wesentlichen mit href="#x" werden Sie zu einem Element mit id="x" in Ihrer Webseite bringen.

+0

Danke George Bailey. Ich hatte nicht darüber nachgedacht, jeden Monat ein eigenes div zu setzen. Dies würde mir eine einfache 'ID' geben, auf die ich hinweisen könnte. Ich möchte in den Monat "blättern" und nicht einfach nur dorthin springen, aber ich denke, mit einer 'ID' kann ich einen Weg finden, um die Schriftrolle funktionieren zu lassen. Danke für Ihre Hilfe. –

+0

Ja, eine Suche nach "smooth scroll to anchor" würde diese Antwort wahrscheinlich finden. Wenn nicht, könnten Sie eine separate Frage stellen. - Willkommen bei StackOverflow! –

+0

Die Verwendung der div, um eine Markierung an der Spitze eines jeden Monats zu platzieren, funktionierte großartig. Jetzt kann ich von Monat zu Monat springen. Jetzt, um das Scrollen herauszufinden. Danke nochmal für deine Hilfe. –

Verwandte Themen