Nested LI onClick

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Raoul vd rijt

raoul vd rijt

20/12/2010 22:42:26
Quote Anchor link
Beste,

Ik heb een 2 laags menu gemaakt, en wil graag met onclick werken. Echter ik heb het volgende probleem :
wanneer ik op de onclick van de level 2 LI wil klikken, pakt hij alsnog de level 1 onclick.
Na 2 uur proberen helaas nog steeds geen oplossing. Misschien dat iemand met een verse kijk hier een antwoord op weet.

menu opbouw:
<ul>
***<li onclick="document.location.href=\''.$link.'\'"">Level 1
******<ul>
*********<li onclick="document.location.href=\''.$link.'\'"">Level 2</li>
******</ul>
</ul>


Weet iemand hier een goede oplossing voor? Mag voor mijn part met div's, z-index.. in ieder geval iets dat werkt. Het liefst geen (complexe)javascript.

Met vriendelijke groet,

Raoul
 
PHP hulp

PHP hulp

09/01/2025 04:16:10
 
Bas Cost Budde

Bas Cost Budde

20/12/2010 22:45:37
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
echo <<<HTML
<li>
  <a href="$link1">Level 1</a>
  <ul>
    <li>
      <a href="$link2">Level 2</a>
    </li>
  </ul>
</li>
HTML;


is net iets anders. Waarom kies jij voor een klik op een li?

Edit: ingesprongen voor het inzicht
Gewijzigd op 21/12/2010 12:02:53 door Bas Cost Budde
 
Vincent Huisman

Vincent Huisman

21/12/2010 07:36:30
Quote Anchor link
bas, dat lijkt nergens op.

@raoul, je sluit je eerste li niet af
 
Raoul vd rijt

raoul vd rijt

21/12/2010 09:54:27
Quote Anchor link
Typefoutje in de eerste post. De Level1-LI word afgesloten nadat de 2e UL word afgesloten.
De reden waarom ik een onclick wil is omdat de gebruiker in het gehele LI-veld kan klikken, in plaats van alleen de link (die tevens klikbaar is, maar meer voor google bedoeld is)

--EDIT--
Opgelost door een DIV-je om de <a> tag te zetten, en op die DIV een onClick gezet. Op deze manier word de DIV automatisch even groot als de LI
Gewijzigd op 21/12/2010 10:08:13 door raoul vd rijt
 
Jelmer -

Jelmer -

21/12/2010 10:00:28
Quote Anchor link
Je onclick event bubbelt omhoog. (dit zorgt ervoor dat je op een plaatje in een link kan klikken, en dat de link het onclick event opvangt) en als je toegang hebt tot je event, kan je dit ook stoppen met event.stopPropagation.
 
Bas Cost Budde

Bas Cost Budde

21/12/2010 10:21:04
Quote Anchor link
Vincent, motiveer je je antwoord nog voor me?

Edit: @Raoul, wanneer het helpt om een div rond de a te zetten, helpt het dan misschien ook om je a in CSS een display:block te geven?
Gewijzigd op 21/12/2010 10:39:00 door Bas Cost Budde
 
Joakim Broden

Joakim Broden

21/12/2010 11:44:41
Quote Anchor link
MENSEN MENSEN MENSEN MENSEN! LEER EERST EEN FATSOENLIJK HTML VOORDAT JE ALTIJD GAAT PRUTSEN MET JAVASCRIPT! HTML/CSS IS DE MAKKELIJKSTE TAAL OM TE LEREN!!!!

Sorry voor CAPS maar ik erger me groen en geel aan de mensen die niet eens fatsoenlijk html kunnen/willen leren en dat mensen ze ook nog eens gaan helpen met de vieze lelijke oplossingen. Javascript is ook nog eens slecht voor de SEO, google ziet dit niets als een menu omdat het javascript oftewel hij indexeert de pagina's ERG slecht!

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<ul>
    <li><a href="#">Lorem ipsum</a></li>
    <li><a href="#">Lorem ipsum</a></li>
    <li><a href="#">Lorem ipsum</a></li>
</ul>

ul {
    overflow: hidden;
    list-style: none;
    margin: 0;
    padding: 0;
}

ul li {
    float: left;
    padding: 0;
    margin: 0 15px 0 0;
}

ul li a {
    float: left;
    display: block;
    padding: 2px 10px;
    background: red;
    text-decoration: underline;
}


etc etc etc

PS kan zijn dat het nog even getest moet worden, heb het even snel getypt zonder te testen.

@vincent, motiveer je antwoord even, de html is goed..
Gewijzigd op 21/12/2010 12:02:07 door Joakim Broden
 
Bas Cost Budde

Bas Cost Budde

21/12/2010 12:03:24
Quote Anchor link
aha, je zag het zelf al :) ik heb even voor je ingesprongen
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.