Konrad Karpieszuk

Konrad Karpieszuk WordPress Plugin
Compatibility
Assurance for WPML

Temat: po załadowaniu przeskocz do kotwicy

witam, dla Was na 100% banał, ale ja zwyczajnie nie wiem :)

chce, aby po załadowaniu strony, ta automatycznie przeskakiwała do elementu z id="photo" (tak, aby suwak sie przewinal do tego miejsca, cos jakby kliknac w odnosnik z href="#photo")

mam taki kod, znaleziony na sieci:


<script>
location.href = "#photo";
</script>


i działa w chrome, działa w operze. firefox natomiast nie reaguje na to, firebug w konsoli nie pokazuje zadnego bledu

czego tu brakuje? a moze jeszcze inaczej? dopuszczam tez jquery bo i tak jest ladowany
Piotr W.

Piotr W. Symfony2 / MongoDB

Temat: po załadowaniu przeskocz do kotwicy

do tego sluzy metoda ".hash" na obiekcie location.

$(document).ready(function() {
location.hash = "#photo";
});
Konrad Karpieszuk

Konrad Karpieszuk WordPress Plugin
Compatibility
Assurance for WPML

Temat: po załadowaniu przeskocz do kotwicy

dzieki, dziala jak nalezy :) nie znalem tej metody
Piotr Koszuliński

Piotr Koszuliński JavaScript ninja

Temat: po załadowaniu przeskocz do kotwicy

Piotr Walków:
do tego sluzy metoda ".hash" na obiekcie location.

$(document).ready(function() {
location.hash = "#photo";
});

A po cóż do tego jQuery?

konto usunięte

Temat: po załadowaniu przeskocz do kotwicy

Piotr Koszuliński:
Piotr Walków:
do tego sluzy metoda ".hash" na obiekcie location.

$(document).ready(function() {
location.hash = "#photo";
});

A po cóż do tego jQuery?

Bo dla wielu ludzi w tych czasach jQuery = Javascript
i nie wiedza jak sie pisze podstawowe rzeczy przy uzyciu "vanilla JS" ;)

Teraz panie wszystko musi byc jquery, bo inaczej nie jest modne i nie jest cool i pewnie nie bedzie dzialac :) :P
Jakub L.

Jakub L. Programista

Temat: po załadowaniu przeskocz do kotwicy

A później firma która sobie zoutsorsowała robienie stronki zastanawia się, czemu ah czemu na telefonach się ich strona ładuje jak krew z nosa.

Zacząłbym od body.onload albo czegoś takiego: http://www.w3.org/TR/html4/interact/scripts.html#h-18.2.3Jakub L. edytował(a) ten post dnia 08.09.11 o godzinie 20:16
Konrad Karpieszuk

Konrad Karpieszuk WordPress Plugin
Compatibility
Assurance for WPML

Temat: po załadowaniu przeskocz do kotwicy

Piotr Koszuliński:
Piotr Walków:
do tego sluzy metoda ".hash" na obiekcie location.

$(document).ready(function() {
location.hash = "#photo";
});

A po cóż do tego jQuery?

wspomnialem ze jQuery mam zaladowane wiecmysle ze temu w to je ubral :)

konto usunięte

Temat: po załadowaniu przeskocz do kotwicy

Konrad Karpieszuk:
wspomnialem ze jQuery mam zaladowane wiecmysle ze temu w to je ubral :)

No wiemy, wiemy... tak sie tylko droczymy ;)

konto usunięte

Temat: po załadowaniu przeskocz do kotwicy

Konrad Karpieszuk:
witam, dla Was na 100% banał, ale ja zwyczajnie nie wiem :)

chce, aby po załadowaniu strony, ta automatycznie przeskakiwała do elementu z id="photo" (tak, aby suwak sie przewinal do tego miejsca, cos jakby kliknac w odnosnik z href="#photo")

mam taki kod, znaleziony na sieci:


<script>
location.href = "#photo";
</script>


i działa w chrome, działa w operze. firefox natomiast nie reaguje na to, firebug w konsoli nie pokazuje zadnego bledu

czego tu brakuje? a moze jeszcze inaczej? dopuszczam tez jquery bo i tak jest ladowany

A co w ogóle rozumiesz przez "po załadowaniu strony"? Ready czy load? Jeśli chcesz po prostu po kliku w link trafić na stronę docelową przewiniętą do np... komentarzy, to już przy konstruowaniu linka dodaj hash (<a href="http://cycki.pl/wpis#comments">Komentarze</a>).
Piotr W.

Piotr W. Symfony2 / MongoDB

Temat: po załadowaniu przeskocz do kotwicy

Faktycznie sie czepiacie ;p

Powiedzial Konrad ze ma jq wiec i tak ma $(document).ready w skrypcie.

konto usunięte

Temat: po załadowaniu przeskocz do kotwicy

Piotr Walków:
Faktycznie sie czepiacie ;p

Powiedzial Konrad ze ma jq wiec i tak ma $(document).ready w skrypcie.


samo mu się nie dopiszę, więc nie wiadomo, czy ma...
Bartosz Ratajczyk

Bartosz Ratajczyk MS SQL Developer

Temat: po załadowaniu przeskocz do kotwicy

To jeszcze się upewnij, że masz jQuery 1.6.3, które eliminuje atak xss na location.hash http://blog.jquery.com/2011/09/01/jquery-1-6-3-released/

konto usunięte

Temat: po załadowaniu przeskocz do kotwicy

Jakub L.:
A później firma która sobie zoutsorsowała robienie stronki zastanawia się, czemu ah czemu na telefonach się ich strona ładuje jak krew z nosa.

Zacząłbym od body.onload albo czegoś takiego: http://www.w3.org/TR/html4/interact/scripts.html#h-18.2.3
$(document).ready() !== body.onload
Adam Pawliczek

Adam Pawliczek Usability expert, UX
designer,
Interaction
specialist

Temat: po załadowaniu przeskocz do kotwicy

Kamil Brenk:
$(document).ready() !== body.onload
onload odpala się bez obrazków i innych obiektów a ready na nie czeka? Jak to było bo nie chce mi się szukać :P Dziś mam lenia...

konto usunięte

Temat: po załadowaniu przeskocz do kotwicy

Adam Pawliczek:
Kamil Brenk:
$(document).ready() !== body.onload
onload odpala się bez obrazków i innych obiektów a ready na nie czeka? Jak to było bo nie chce mi się szukać :P Dziś mam lenia...

Daleko nie musisz szukać ;)

http://api.jquery.com/ready/

konto usunięte

Temat: po załadowaniu przeskocz do kotwicy

Adam Pawliczek:
Kamil Brenk:
$(document).ready() !== body.onload
onload odpala się bez obrazków i innych obiektów a ready na nie czeka? Jak to było bo nie chce mi się szukać :P Dziś mam lenia...

ready() = DOM ONLY
load() = wszystko razem z obrazkami, aczkolwiek IE ma powazne problemy z odpalaniem load tak jak trzeba, wiec tego lepiej nie uzywac dla calej strony.
Adam Pawliczek

Adam Pawliczek Usability expert, UX
designer,
Interaction
specialist

Temat: po załadowaniu przeskocz do kotwicy

Łukasz Nowacki:
Daleko nie musisz szukać ;)
http://api.jquery.com/ready/
No właśnie to było daleko jak na mój dzisiejszy stan ;)
Andrzej Winnicki:
ready() = DOM ONLY
load() = wszystko razem z obrazkami, aczkolwiek IE ma powazne problemy z odpalaniem load tak jak trzeba, wiec tego lepiej nie uzywac dla calej strony.
Czyli odwrotnie.

konto usunięte

Temat: po załadowaniu przeskocz do kotwicy

Dokładnie, ready jest odpalane po wczytaniu drzewa DOM. W przypadku body.onload może dojść do takiej sytuacji:

<body onload="zrobCosZMenu()">

function zrobCosZMenu() {
document.getElementById('menu') // error, bo <div id="menu"> jeszcze się nie wczytało do przeglądarki
}
Wojciech S.

Wojciech S. BushidoIT.com

Temat: po załadowaniu przeskocz do kotwicy

Kamil Brenk:
Dokładnie, ready jest odpalane po wczytaniu drzewa DOM. W przypadku body.onload może dojść do takiej sytuacji:

<body onload="zrobCosZMenu()">

function zrobCosZMenu() {
document.getElementById('menu') // error, bo <div [/quote]> id="menu"> jeszcze się nie wczytało do przeglądarki[quote]}

Hmm, z tego co wiem to onload zawsze wykonuje sie po domready, więc sytuacja którą podałeś nigdy nie będzie miała miejsca.

domready - drzewo dom jest zbudowane,
onload - drzewo dom jest zbudowane, wszystkie resource'y zostały pobrane, strona jest wyrenderowana i gotowa w 100%.

konto usunięte

Temat: po załadowaniu przeskocz do kotwicy

Wojciech Skowronek:
Kamil Brenk:
Dokładnie, ready jest odpalane po wczytaniu drzewa DOM. W przypadku body.onload może dojść do takiej sytuacji:

<body onload="zrobCosZMenu()">

function zrobCosZMenu() {
document.getElementById('menu') // error, bo <div [/quote][/quote]> > id="menu"> jeszcze się nie wczytało do przeglądarki[quote][quote]}

Hmm, z tego co wiem to onload zawsze wykonuje sie po domready, więc sytuacja którą podałeś nigdy nie będzie miała miejsca.

domready - drzewo dom jest zbudowane,
onload - drzewo dom jest zbudowane, wszystkie resource'y zostały pobrane, strona jest wyrenderowana i gotowa w 100%.
masz rację, coś mi się pomieszało - dzięki za poprawienie błędu ;)

czyli z window.onload może powstać inny problem - użytkownik wchodzi na stronę, przeglądarka ładuje 10 iframe (facebooki i reszta) i 20 obrazków, z czego część z nich może nie odpowiadać, więc zanim zostanie wywołane JavaScript minie trochę czasu - w tym czasie user może widzieć syf na stronie (nieposkładane tabsy i menu rozwijane, nieukryte zdjęcia w wielowarstwowych galeriach i resztę bajerów, które powinny być ukrywane po starcie js)



Wyślij zaproszenie do