Frage

Bearbeiten ok, die Zeile:

$( <?php echo("'#".$_GET['item']."'")  ?> ).parent().show();

Ist natürlich und versuchen, öffnen Sie das Menü an der richtigen Stelle zu halten. Ich glaube nicht, das jemals gearbeitet (bekam ich hasse auf anderem ppls Code arbeiten).

Dann ist mein aktuelles Problem ist, wie die <ul class="myul"> der Zugriff direkt über den <li id="001" > das Element id = mit 001 ??

Hallo

Ich versuche, ein Stück Code von einem jetzt verloren Programmierern mir gelassen zu reparieren. Es funktioniert, aber es ist ein Merkmal fehlt; Ich nicht bleiben nicht an der richtigen Stelle geöffnet, wenn ein Menüpunkt ausgewählt wird.

JQuery:

$.swapImage(".swapImage");                                  
            $( <?php echo("'#".$_GET['item']."'")  ?> ).parent().show();
            $('.myul').hide();              
            $('.slide_ul li:not(:first-child)').hide();     
            $('.hideMe').click(function(){ 
                $(this).next('ul').slideToggle('fast').siblings('ul:visible').slideUp('fast');
            });                             
            $('.myul a').click(function(e){
                var url = $(this).attr('href');
                var index = url.indexOf('=');
                var substr = url.slice(index+1);                    
                $('#productContainer >div').hide();
                $('#productContainer').load("products/"+substr+"/product.html", function(){
                    $(this).fadeIn('slow'); 
                    var i = 0;
                    $('.slide_ul li:not(:first-child)').hide();                                                                             
                });                 
            });

HTML:

    <!-- Right Navigation -->
                        <div id="rightNav">
                            <div id="navMenu">
                                <h2 id="navMenuheader">Catalogue</h1>
                                <h3 class="hideMe">Widgets</h3>
                                <ul class="myul">
                                    <h4 class="hideMe">Widget Coins</h2>
                                    <ul class="myul">
                                        <li id="001" >
                                             <a href="products.php?item=001">The South African Widget</a>
                                          </li>

Das Ergebnis des Menüs Klick in ein schwarzes div in der Mitte der Seite injectContent. Geschieht $(document).ready(function(){ jedes Mal dies der Fall ist? Ansonsten kann ich nicht sehen, warum alle Menüpositionen aktualisiert werden.

Ich glaube, ich etwas mehr Code benötigen den Platz im Menü sind wir und lassen sie offen zu identifizieren. Es gibt Ameisen auf meinem Schreibtisch.

War es hilfreich?

Lösung 2

Wir hatten gerade einige Jquery fügen Sie den entsprechenden Abschnitt des Menüs wieder zu öffnen, nachdem sie alle versteckt worden ist. Also direkt nach der Zeile $('.myul').hide() wieder öffne ich das Menü Abschnitt auf der Grundlage der URL-Abfrage (products.php item = 001?):

var item =  <?php echo("'".$_GET['item']."'")  ?>;

                if (item != '')             
                {
                    item = "li#" + item;            
                    $(item).parent().show();
                    $(item).parent().parent().show();
                }

Andere Tipps

scheint mir, wie der schlechte schließenden Tag auf

<h4 class="hideMe">Widget Coins</h2>

Ihr Hauptproblem, wenn es auf

angeklickt wird
$(this).next('ul')

nicht einen ul zu finden, weil es ein Kind statt einer Geschwister des h4
ist Ändern es zu

<h4 class="hideMe">Widget Coins</h4>

macht es besser funktionieren, nicht sicher, ob das alles war, Sie waren auf der Suche nach

$( <?php echo("'ul:has(#".$_GET['item'].")'");  ?> ).show();

wird jedes ul öffnen, die einen Nachkommen mit dem angegebenen id
hat nur mit .parent () wurde nicht den Top-ul bekommen zeigen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top