php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 31.12.2009, 12:25  
Erfahrener Benutzer
 
Registriert seit: 02.12.2009
Beiträge: 104
PHP-Kenntnisse:
Anfänger
abdullah befindet sich auf einem aufstrebenden Ast
abdullah eine Nachricht über Skype™ schicken
Standard [Erledigt] display block und none

hi,
ich habe ein script geschrieben die mir eine Navigation darstellen soll, leider weiss ich nicht weshalb das ein und ausklappen durch display none und display block nicht funktioniert

also der code sieht so aus:
PHP-Code:
$kategorien = array ( "Auto, Rad & Boot" => array("Autos",
                                                      
"Autoteile & Reifen",
                                                      
"Boote & Bootszubehör"
                                                    
),
                       
"Eintrittskarten & Tickets" => array(
                                                            
"Comedy & Kabarett",
                                                            
"Konzerte"
                            
)
);

echo 
"<ul id='navi'>";
foreach(
$kategorien as $key => $value) {
     echo 
"<li><a href='#' onclick='display(document.getElementById('subnavi'));'>" $key "</a></li>";
     echo 
"<ul type='square' id='subnavi' class='sub'>";
     for(
$i 0$i count($value); $i++) {
         echo 
"<li><a href='#'>" $value[$i] . "</a></li>";
     }
     echo 
"</ul>";
}
echo 
"</ul>"
javascript dafür:
Code:
function display(element)
{
    element = element.style;
    if (element.display == 'block') {
        element.display = 'none';
        return;
    }
    element.display = 'block';
}
und die CSS
Code:
#navi {
	list-style: none;
}

.sub {
	color: orange;
	display: none;
}
was mache ich falsch ?
lg abdullah
__________________
Jeder Code ist fehlerhaft!
Wichtig ist dass man auf die Hinweise und Verbesserungsmöglichkeiten nicht den Rücken zu dreht!
abdullah ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 31.12.2009, 12:36  
Neuer Benutzer
 
Benutzerbild von Deekay
 
Registriert seit: 25.09.2009
Beiträge: 14
PHP-Kenntnisse:
Fortgeschritten
Deekay befindet sich auf einem aufstrebenden Ast
Standard

Bei deinem onclick übergibst du nur "subnavi", also die ID, und in der Funktion selbst solltest du dann über "document.getElementById(element)" das Objekt selbst ansprechen.
Deekay ist offline  
Alt 31.12.2009, 12:46  
Erfahrener Benutzer
 
Benutzerbild von tomtaz
 
Registriert seit: 17.06.2008
Beiträge: 1.762
PHP-Kenntnisse:
Fortgeschritten
tomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig nett
tomtaz eine Nachricht über ICQ schicken tomtaz eine Nachricht über Skype™ schicken
Standard

naja, ob das so funktioniert wage ich zu bezweifeln, weil jedes Menüelement die gleiche ID haben wird nach seinem Script da oben. Das das nicht valide ist, muss ich glaube ich nicht erwähnen oder?
__________________
Mfg Tomtaz
"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."
tomtaz ist offline  
Alt 31.12.2009, 13:00  
Erfahrener Benutzer
 
Registriert seit: 02.12.2009
Beiträge: 104
PHP-Kenntnisse:
Anfänger
abdullah befindet sich auf einem aufstrebenden Ast
abdullah eine Nachricht über Skype™ schicken
Standard

PHP-Code:
echo "<ul id='navi'>";
foreach(
$kategorien as $key => $value) {
     echo 
"<li><a href='#' onclick='display(document.getElementById('subnavi'));'>" $key "</a></li>";
     echo 
"<ul type='square' id='subnavi' class='sub'>";
     for(
$i 0$i count($value); $i++) {
         echo 
"<li><a href='#'>" $value[$i] . "</a></li>";
     }
     echo 
"</ul>";
}
echo 
"</ul>"
also sagt ihr dass durch die innere ul bzw. der id='subnavi' nicht funktioniert da es mehrfach durch die Schleife im Code vorhanden ist.

wie blende ich aber dennoch ein und aus? also wo muss ich dann den id hinschreiben?
__________________
Jeder Code ist fehlerhaft!
Wichtig ist dass man auf die Hinweise und Verbesserungsmöglichkeiten nicht den Rücken zu dreht!
abdullah ist offline  
Alt 31.12.2009, 13:06  
Erfahrener Benutzer
 
Benutzerbild von tomtaz
 
Registriert seit: 17.06.2008
Beiträge: 1.762
PHP-Kenntnisse:
Fortgeschritten
tomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig nett
tomtaz eine Nachricht über ICQ schicken tomtaz eine Nachricht über Skype™ schicken
Standard

Zitat:
Zitat von abdullah Beitrag anzeigen
also sagt ihr dass durch die innere ul bzw. der id='subnavi' nicht funktioniert da es mehrfach durch die Schleife im Code vorhanden ist.

wie blende ich aber dennoch ein und aus? also wo muss ich dann den id hinschreiben?
so sieht es aus. Woher soll den der Browser den wissen, welches "Subnavi" jetzt gemeint ist.

Eine Möglichkeit währe es, einen Count der Schleifendurchläufe hinter "subnavi" einzufügen, dann würde es funktionieren.

Wie du das machst, musst du selber herausfinden. Die Lösung hab ich dir ja gegeben.
__________________
Mfg Tomtaz
"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."
tomtaz ist offline  
Alt 31.12.2009, 13:59  
Neuer Benutzer
 
Benutzerbild von Deekay
 
Registriert seit: 25.09.2009
Beiträge: 14
PHP-Kenntnisse:
Fortgeschritten
Deekay befindet sich auf einem aufstrebenden Ast
Standard

Ouh die Schleife hab ich nicht mal bemerkt, fand es schon komisch das objekt statt der ID zu übergeben.

Wie tomtaz sagte, irgendwie die subnavis durchzählen, vllcht gerade deinen $key dranhängen: 'subnavi_'.$key
Deekay ist offline  
Alt 31.12.2009, 15:08  
Erfahrener Benutzer
 
Registriert seit: 02.12.2009
Beiträge: 104
PHP-Kenntnisse:
Anfänger
abdullah befindet sich auf einem aufstrebenden Ast
abdullah eine Nachricht über Skype™ schicken
Standard

hi,
habe jetzt abgeändert:
PHP-Code:
$counter 0;
echo 
"<ul id='navi'>";
foreach(
$this->kategorien as $key => $value) {
    echo 
"<li><a href='#' onclick='display(document.getElementById(\'subnavi_".$counter."\'));'>" $key "</a></li>";
    echo 
"<ul type='square' id='subnavi_".$counter."' class='sub'>";
    for(
$i 0$i count($value); $i++) {
        echo 
"<li><a href='#'>" $value[$i] . "</a></li>";
    }
    echo 
"</ul>";
    
$counter++;
}
echo 
"</ul>"
funktioniert dennoch nicht, was habe ich diesmal falsch gemacht ?
lg abdullah
__________________
Jeder Code ist fehlerhaft!
Wichtig ist dass man auf die Hinweise und Verbesserungsmöglichkeiten nicht den Rücken zu dreht!
abdullah ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
3. Ebene bei dynamischem Menu im IE6 philosapiens JavaScript, Ajax und mehr 0 29.11.2009 13:56
[Erledigt] dynamischen signatur zeigt fehler &quot;grafik kann nicht angezeigt werden&quot; an steive PHP Tipps 2009 33 12.11.2009 11:31
[Erledigt] PHP in Console lithium Server, Hosting und Workstations 16 25.06.2009 00:52
[Erledigt] bild als link mit mouseover ohne zeilenumbruch SteiniKeule HTML, Usability und Barrierefreiheit 12 30.10.2008 21:12
kleine Frage zu Einfärben von Kategorie cybermailer PHP Tipps 2008 21 05.05.2008 14:42
display: none im Formular cycap HTML, Usability und Barrierefreiheit 4 29.10.2007 14:35
Problem mit DBMenu im IE RoDa HTML, Usability und Barrierefreiheit 4 16.05.2007 18:12
Tabellenproblem im IE King2k HTML, Usability und Barrierefreiheit 2 08.05.2006 16:28
[CSS] Block und Inline Element gleichzeitig....oder so HTML, Usability und Barrierefreiheit 2 26.02.2006 23:31
[CSS] Menübuttons Verschieben HTML, Usability und Barrierefreiheit 8 19.02.2006 09:54
block elemente nebeneinander HTML, Usability und Barrierefreiheit 2 30.07.2005 12:12
[Erledigt] phpMyAdmin Fehler Datenbanken 1 24.04.2005 11:33
[Erledigt] PHP-Seite funktioniert nicht... PHP Tipps 2004-2 11 17.12.2004 12:59
Hilfe ich finde den Fehler nicht! PHP Tipps 2004 2 07.10.2004 17:40

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
onclick display block, php display block, onclick display none or block, php display:block = none, php display none block, onclick display:block, type=square valide, php display:none formular, onclick php display block, onclick display block/none, display none php, onclick display:none, onclick=\display_block, herausfinden ob ein element display none hat, php display=\'block\', onclick this display none, php none, php element style none, php id gleich display none ist, php display:block none

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:53 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum