Collapsing menu Save state (php, js)

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
Khronos
Δημοσιεύσεις: 754
Εγγραφή: 11 Δεκ 2006 14:43
Τοποθεσία: Ηράκλειο

Collapsing menu Save state (php, js)

Δημοσίευση από Khronos » 01 Ιαν 2011 17:36

Καταρχήν καλή χρονιά σε όλους!

Έχω ένα collapsing menu και ήθελα να έχω το state του σε κάθε αλλαγή σελίδας.
Σίγουρα υπάρχει καλύτερος τρόπος αλλά εγώ το έκανα ως εξής:

Κώδικας: Επιλογή όλων

<script>
$&#40;document&#41;.ready&#40;function&#40;&#41; &#123; 
$&#40;'#collapse-menu ul'&#41;.hide&#40;&#41;;
    $&#40;'#collapse-menu li a'&#41;.click&#40;function&#40;&#41; &#123;
        $&#40;this&#41;.addClass&#40;'active'&#41;;
        $&#40;this&#41;.next&#40;&#41;.slideToggle&#40;'normal'&#41;;
        var id = $&#40;this&#41;.attr&#40;'id'&#41;.split&#40;'-'&#41;;
        $.post&#40;"saveState.php", &#123; id&#58; id&#91;1&#93;&#125; &#41;;
&#125;&#41;;
&#125;&#41;
</script>

<ul id="collapse-menu">
    <li><a href="#" id="item-1" class="active">Gymnastics</a>
        <ul>
            <li><a href="#" id="item-3" class="active">Mpara Plaths</a>
                <ul>
                    <li><a href="index.php?module=products&amp;cat_id=6" class="active">test</a></li>
                </ul>
            </li>
        </ul>
    </li>
    <li><a href="index.php?module=products&amp;cat_id=4">τεστ</a></li>
    <li><a href="index.php?module=products&amp;cat_id=5">φδσαφ</a></li>
</ul>

<?php
    if&#40;!empty&#40;$_SESSION&#91;'category_ids'&#93;&#41;&#41; &#123; $js_id = json_encode&#40;$_SESSION&#91;'category_ids'&#93;&#41;; &#125; else &#123; $js_id = '&#91;&#93;'; &#125;
    ?>
</div>

<script>
$&#40;document&#41;.ready&#40;function&#40;&#41; &#123;
    var ids = <?=$js_id?>;
    for&#40;i in ids&#41; &#123;
        $&#40;'a#item-'+ids&#91;i&#93;&#41;.addClass&#40;'active'&#41;;
        $&#40;'a#item-'+ids&#91;i&#93;&#41;.next&#40;&#41;.show&#40;&#41;;
    &#125;
&#125;&#41;
</script>

<?php
unset&#40;$_SESSION&#91;'category_ids'&#93;&#41;;
?>
saveState.php

Κώδικας: Επιλογή όλων

<?php
session_start&#40;&#41;;
$_SESSION&#91;'category_ids'&#93;&#91;&#93; = $_POST&#91;'id'&#93;;
?>
Όποιος έχει να προτείνει κάτι καλύτερο, be my guest! :D

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες