Autor Zpráva
Martin02
Profil
Ahoj,
když si najedete na stránku pixy.cz a vlevo dáte Rozbalit vše a pak klikáte na menu, tak se stránka jen vyscrolluje tam, kde začíná to, na co jste klikli v menu. Ale když dáte Sbalit vše a klikáte na menu, v adrese se za www.pixy.cz přidává třeba #part-ref, jako předtím, ale obsah stránky se nahrazuje, už nescrolluje. Tak se chci zeptat, jak je možné toto udělat? Aby když kliknu na odkaz, který má href="#blabla, se změnil text v obsahu na jiný.
Koukal jsem se tam do zdrojáku a je tam vlastně celá stránka (všechny stránky z menu), ale zobrazuje se jen ta, která má id v adrese, tak jak mám udělat, aby se zobrazil jen div, který má id, které je napsáno v adrese?
děkuji
panther
Profil
Martin02:
na stránce jsou všechny obsahy, všechny vyjma právě zobrazeného mají display: none, zobrazený display: block. Který se zobrazí se určuje právě z URL, zobrazí se ten blok, který obsahuje element s id shodným s hashem v URL.

Konkrétně se to řeší v tomto souboru.
Martin02
Profil
v tom souboru se resi i jine veci, ale ja chci vedet, jak udelat aby se to display: block nastavovalo na prvek, ktery je v url.

Pardon, ze pisu bez hacku, pisu z mobilu.
Joker
Profil
Martin02:
jak udelat aby se to display: block nastavovalo na prvek, ktery je v url.
Javascriptem. Část URL za mřížkou je v location.hash, tak pak stačí prvku s tím id nastavit display:block a ostatním (nejlépe jedním univerzálním pravidlem) display:none.
(poznámka: nekoukal jsem, jestli to přesně takhle řeší i Pixy)
panther
Profil
Joker:
poznámka: nekoukal jsem, jestli to přesně takhle řeší i Pixy
id má nadpis, takže hodnotu vlastnosti display mění na přímém rodiči. De facto ale tak, jak jsi napsal (co bude mít ID je vedlejší).

Martin02:
v tom souboru se resi i jine veci
tak si z toho vycucni, co potřebuješ.

jak udelat aby se to display: block nastavovalo na prvek, ktery je v url.
napsal jsem ti, že se jedná o hash - myslel jsem, že tě třeba pak napadne hledat. Mezi prvními výsledky je mj. odkaz na tuto diskusi, konkrétné Jak získat data za křížkem v URL?.
Martin02
Profil
Dobře, děkuji.
V javascriptu se moc dobře nevyznám. Když budu mít proměnou s tím hashem, jak mám udělat, abych odstranil to # na začátku a mohl dále pracovat jen s tím názvem divu?
panther
Profil
Martin02:
substr
Martin02
Profil
mockrát děkuji

Když pixy má ve zdrojáku texty všech stránek a některé skryté přes display:none, uvidí to, co je pod display:none vyhledávače? Uvidí to, když text bude pod visibility: hodden?

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: