Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Przedszkole _ [JS] [jQuery] Show Hide - składnia

Napisany przez: martinii007 29.03.2018, 14:40:26

Czy jest możliwe zrobienie prostszej składni w przypadku tego kodu?
Konkretnie to chodzi o elementy show/hide. Czy zawsze pojedynczo trzeba odznaczyć, które mają się schować?
Czy da radę żeby wszystkie pozostałe z automatu się zwinęły?


Kod
        <li>
            <span><i class="icon-globe"></i> <a href="#demo1">demo1</a></span>
        </li>

        <li>
            <span><i class="icon-globe"></i> <a href="#demo2">demo2</a></span>
        </li>

<div class="text">

<div id="demo1">
show demo1
</div>

<div id="demo2">
show demo2
</div>

</div>

$(document).ready(function () {

$("#demo1").hide();
$("#demo2").hide();

$('a[href*="#demo1"]').bind('click', function() {
        $("#demo1").show('linear');
        $("#demo2").hide("fast");
});

$('a[href*="#demo2"]').bind('click', function() {
    $("#demo2").show('linear');
     $("#demo1").hide("fast");
});

    });



Działający przykład: https://jsfiddle.net/x3e5yp0p/20/

Napisany przez: trueblue 29.03.2018, 14:53:34

https://jsfiddle.net/0r7deL0b/1/

Napisany przez: martinii007 13.04.2018, 09:59:07

Dzięki za kod, podrasowałem go sobie, żeby scrollował do danego contentu i jest OK.
Został mi tylko do rozwiązania ostatni problem, mianowicie wpisując url np. www.xxxxx.pl#demo2 czy jest możliwość ażeby wyświetlił się od razu box z tą treścią?

Napisany przez: Lukeup 13.04.2018, 10:39:52

Wybierz informację po hashu:

  1. var hash = window.location.hash.substr(1);


A potem po:

  1. $('.accordion').hide();

które ukrywa Ci elementy o klasie "accordion", dodaj:
  1. $( "#"+hash ).show();

które pokaże Ci element o wybranym id

Nie wiem, czy dobrze zrozumiałem.


Napisany przez: martinii007 13.04.2018, 13:14:33

Bardzo dobrze, właśnie o to chodziło smile.gif

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)