goto top
Het probleem is als volgt;
ik heb een pagina met een menu gedefinieerd. Eén van de keuzes is het wijzigen van je profiel.
Zodra deze functie zijn werk gedaan heeft, gaan we terug naar het menu en geven daar de uitslag van deze bewerking weer, aangezien we van een grotere pagina komen, zie ik nu alleen een wit scherm. (te ver naar beneden)
Nu is mijn gedachte: zodra de functie menu uitgevoerd wordt sturen we de cursor naar het begin van deze pagina.
Ik heb een named anchor (<a name="top"></a>) gedefinieerd.
Graag hulp ...
Toine
Als je #top toevoegt aan je URL zul je naar de plek van die anchor gaan. Met Javascript (geen idee hoe je menu in elkaar zit) kun je dan doorlinken naar #top.
Raoul
Gewijzigd op 04/09/2013 16:07:11 door - Raoul -
Mijn bedoeling is dat het automatisch (zonder iets doet) werkt.
Toine
Toevoeging op 04/09/2013 16:15:40:
Nog even mijn source code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
echo '<div id="navigatie">';
echo '<ul>';
if ($_SESSION['FunctieID']==3 || $_SESSION['FunctieID']==9) {
echo '<li><a href="http://www.mttv72.nl/Aanmelden/NwLid.php"> lid toev</a></li>';
echo '<li><a href="http://www.mttv72.nl/Aanmelden/ChLid.php"> lid wijz</a></li>';
}
echo '<li><a href="http://www.mttv72.nl/Aanmelden/wijzigen.php"> profiel</a></li>';
echo '<li><a href="http://www.mttv72.nl/Aanmelden/inschrijven.php"> inschrijven</a></li>';
echo '<li><a href="'.$_SERVER['PHP_SELF'].'?actie=uitloggen">uitloggen</a></li>';
echo '</ul>';
echo '</div>'; // EIND NAVIGATIE DIV
// Plaats van een named anchor
echo '<a name="top"></a>';
echo '<p> </p>';
echo '<a href="#top"></a>';
?>
echo '<div id="navigatie">';
echo '<ul>';
if ($_SESSION['FunctieID']==3 || $_SESSION['FunctieID']==9) {
echo '<li><a href="http://www.mttv72.nl/Aanmelden/NwLid.php"> lid toev</a></li>';
echo '<li><a href="http://www.mttv72.nl/Aanmelden/ChLid.php"> lid wijz</a></li>';
}
echo '<li><a href="http://www.mttv72.nl/Aanmelden/wijzigen.php"> profiel</a></li>';
echo '<li><a href="http://www.mttv72.nl/Aanmelden/inschrijven.php"> inschrijven</a></li>';
echo '<li><a href="'.$_SERVER['PHP_SELF'].'?actie=uitloggen">uitloggen</a></li>';
echo '</ul>';
echo '</div>'; // EIND NAVIGATIE DIV
// Plaats van een named anchor
echo '<a name="top"></a>';
echo '<p> </p>';
echo '<a href="#top"></a>';
?>
dit is met javascript te regelen.
om naar de anchor 'top' te gaan moet je deze code uitvoeren:
maar je anchor moet je dan wel zo schrijven:
Ik wil niet alleen na het wijzigen van het profiel naar het menu gaan, maar ook dat de cursor weer aan het begin van de pagina staat.
Toine
Dat gebeurt met de muis (of zo).
Het is niet jouw taak om de muisbewegingen te kapen.
Vanuit het menu krijgt men de kans om je eigen profiel te wijzigen.
Dit doe ik mbv een formulier dit formulier bestaat uit een groot aantal vragen. Nadat de gebruiker dit formulier submit gaat het systeem weer terug naar het menu met de uitslag van deze actie.
Op dit moment staat de cursor helemaal onderaan de pagina en laat een wit scherm zien.
Om dit te voorkomen lijkt het mij mooier als de pagina dan automatisch weer boven begint.
Maar ja hoe doe je dat?
Toine
Woorden betekenen vaak twee of drie verschillende dingen.
(bv. een tabel kan een <table> zijn, ofwel een tabel van een database. Als mensen geen context geven kunnen we vaak niet afleiden waar de post over gaat)
Leg eens uit wat je met cursor bedoelt.
Bedoel je scroll bar?
Bedoel je ...?
---
Dit is de cursor: . Die wordt bestuurd door de muis; een webbrowser heeft niet de bevoegdheid om de positie van een cursor te veranderen.
Gewijzigd op 06/09/2013 11:23:28 door Kris Peeters
Hoe leg je het uit?
als het scherm beschreven wordt met x voor de breedte en y voor de hoogte,
dan is de y waarde na het invullen van het formulier zo groot dat het scherm leeg lijkt na het submitten.
Het menu kent maar een paar regels dus heeft deze een kleine y waarde.
Hoe zorg ik er nu voor dat het scherm deze y waarde aanpast aan de content van de informatie.
m.a.w. hoe kan ik deze y een andere waarde geven zodat het scherm laat zien wat hij moet laten zien.
schematisch weergegeven
<---------------- x --------------->
|
y eind van het menu
| reactie van het systeem
<---------------- x --------------->
|
|
|
y
|
|
|
| eind van het formulier
<---------------- x --------------->
Scrollen, ooo heet het zo?, maar hoe zorg je er nu voor dat zodra het menu aangeroepen wordt dat het scherm automatisch naar boven scrolled. zonder dat ik ergens op moet clicken?
Leg even stap voor stap (puntsgewijs) uit wat de bezoeker doet, en wat er dan precies moet gebeuren.
1. de gebruiker krijgt een menu te zien
2. gebruiker kiest 'mijn profiel wijzigen'
3. het invulformulier wordt gevuld met de reeds bekende gegevens en de gebruiker krijgt de kans om deze te wijzigen
4. Als hij klaar is wordt het formulier gesubmit.
5. als de invoer ok is worden de gegevens weggeschreven,
5a. het scherm scrolled naar boven
5b. het systeem gaat naar het menu,
5c. krijgt de gebruiker een mailtje en
5d. verdschijnt er een melding op het scherm.
6. Is de invoer niet ok dan
6a. het scherm scrolled naar boven
6b. gaat het systeem terug naar het menu en
6c. krijgt de gebruiker deze mededeling
stop
Toine
Oké, maar als het formulier wordt gesubmit dan laad je daarna toch een nieuwe pagina in en staat de cursor toch automatisch al bovenaan?
Toine van der Ven op 04/09/2013 16:10:10:
// Plaats van een named anchor
echo '<a name="top"></a>';
echo '<p> </p>';
echo '<a href="#top"></a>';
echo '<a name="top"></a>';
echo '<p> </p>';
echo '<a href="#top"></a>';
Laat me hier even iets over zeggen.
Je hebt dus twee elementen die samen werken. Ik zal tonen hoe.
(want <a href="#top"></a> slaat nergens op. Dat is onzichtbaar en doet niets)
Stel, dit staat in de url-balk
mijnwebsite.be?pagina=kalender#top
Dan zal de webbrowser zoeken naar dit:
<a name="top"></a>
En zal de webpagina scrollen tot dat element.
Hoe krijg je iets in een url?
- Wel ... met een <a></a>. Juist?
Dus, als je bv. zo'n link hebt:
<a href="#top">NAAR TOP</a>
Als de gebruiker hier op klikt, scrollt de pagina naar <a name="top"></a>
Je kan dit bv. ook in je header('location ...') zetten.
Code (php)
Ook dan zal de pagina scrollen naar <a name="top"></a>.
=> zo lang #top maar in de url komt.
<a name="top"></a> zet je boven het element waarnaar gescrollt moet worden.
Gewijzigd op 06/09/2013 13:11:14 door Kris Peeters
Hartstikke bedankt voor jullie support
Toine