Problem z pustymi linkami #

w dziale Strony WWW w Operze
warlock24 napisał(a):

Cześć,

może ktoś zerknać na tę stronkę (http://warlock24.googlepages.com/index.html) i mi powiedzieć co mam zrobić aby klikanie w linki o zawartości href="#" nie powodowało przeładowania strony?

weźmy na przykład menu "Moje programy" -> sdVideoPlayer - po załadowaniu javascriptem odpowiedniej treści tam gdzie powinna się znaleźć następuje absolutnie niepotrzebne przeładowanie strony i sprawia że nie da się przejrzeć podstron p

Zaufany napisał(a):

Nie mogę potwierdzić problemu. Aczkolwiek mam testową Operę (najnowszą, publiczną dla Linuksa). W każdym razie sprawdź, jak się sprawuje skrypt z pustym atrybutem href.

Sombria napisał(a):

To wstrętny błąd Opery, który jest już teoretycznie naprawiony (była taka informacja, czy coś pokręciłam?), ale i tak się pojawia - czasem wszędzie a czasem na pojedynczych stronach. Normalnie po najechaniu wskaźnikiem na taki link pokazuje się na końcu adresu znak #, w "popsutej" operze tego nie ma.
Ja sobie z tym radziłam czyszcząc coś w Narzędzia->Wyczyść historię przeglądania... ale zdarza się to bardzo rzadko i nie pamiętam dokładnie, które opcje trzeba zaznaczyć (raczej nie ciasteczka i hasła). Możliwe też, że metoda zadziałała przypadkowo a przyczyna tkwi w czymś innym. Niestety nie mam teraz "zainfekowanego" profilu, żeby to sprawdzić.

warlock24 napisał(a):

Originally posted by Big_Z:

sprawdź, jak się sprawuje skrypt z pustym atrybutem href.



prawdopodobnie strona działałaby dobrze w operze ale przestałaby działać w IE ponieważ znaczniki < a href="" > w IE sa wyświetlane jako zwykły tekst a nie linki p Więc stoję przed następujcym wyborem: albo będzie działać w IE albo w Operze a ja nie chcę rezygnować z AJAX'a p

Originally posted by Sombria:

Ja sobie z tym radziłam czyszcząc coś w Narzędzia->Wyczyść historię przeglądania... ale zdarza się to bardzo rzadko i nie pamiętam dokładnie, które opcje trzeba zaznaczyć (raczej nie ciasteczka i hasła).



raczej chodzi o coś innego. Błednym działaniem według mnie jest sytuacja w której:
- klikam na link, który ma załadować do dokumentu treść mojej podstrony
- javascript (w postaci jquery) modyfikuje moj stronę tak że treść podstrony zostaje wpisana w jej strukturę ($().load()wink
- po zakończeniu działania skryptu (po zmodyfikoaniu stony przez js) następuje głupie i wogóle nie potrzebne przeładowanie (odświeżenie) całej strony p (to się dzieje zreszta tylko w Operze - więc uważam to za jej bład). Nie sadzę żeby to była wina ciasteczek ani cacheowania strony

Zaufany napisał(a):

W tym wypadku znaczniki <a> nie są linkami, a obiektemi do których przypisano uruchomienie skryptu. Teoretycznie powinno dać się przypisać takie zachowanie do dowolnego elementu, więc można spróbować.

Jeśli to nie zadziała, zrób wykrywanie przeglądarek i dla Opery wykasuj w DOM atrybuty href, względnie tylko ich wartości.

Sombria napisał(a):

Originally posted by warlock24:

po zakończeniu działania skryptu (po zmodyfikoaniu stony przez js) następuje głupie i wogóle nie potrzebne przeładowanie


Normalnie w Operze NIE występuje przeładowanie strony przy href="#" - u mnie strona działa prawidłowo. Czasem jednak coś się psuje i występuje efekt o którym piszesz. Zwróć uwagę na link http://img155.imagevenue.com/aAfkjfp01fo1i-6384/loc759/74631_zrzutekranu-4_122_759lo.jpg - u Ciebie najprawdopodobniej nie ma # na końcu.
Możesz też ominąć błąd wpisując href="#fikcyjna_etykieta".

warlock24 napisał(a):

no proszę aż trzy rożne rozwiązania problemu smile Chyba skuszę się na ostatnie, z natury leniwy jestem a to najmniej roboty bigsmile

dzięki wszystkim wink

Zajec napisał(a):

Cały ten błąd występował chyba tylko w starszych wersjach Opery? Ja sprawdziłem na Twojej stronie zachowanie z # zamiast #a i było OK. Na pewno masz najnowszą wersję Opery?

Swoją drogą ten AJAX bardzo mocno utrudnia nawigowanie i nie pozwala na linkowanie do podstron czy też dodawanie podstron do zakładek. Zdajesz sobie z tego sprawę?

warlock24 napisał(a):

Originally posted by Zajec:

Na pewno masz najnowszą wersję Opery?



windows 2000, Opera ver. 9.21

Originally posted by Zajec:

Swoją drogą ten AJAX bardzo mocno utrudnia nawigowanie i nie pozwala na linkowanie do podstron czy też dodawanie podstron do zakładek. Zdajesz sobie z tego sprawę?



Cóż począć. Uparlem się zrobić stronę na googlepages a tam nie ma żadnego języka serwer side, nie zamierzam robić strony całkowicie statycznej - nie chce mi się, iframe odpada bo też tych linków nie będzie, google page creator to też niezłe badziewie, gdybym zrobił stronę całkowicie we flash'u to chyba i tak na jedno by wyszło. Istnieje jeszcze jakaś alternatywa?

Zajec napisał(a):

Polecam zmienić hostingowy serwer ;-)

porneL spisał kiedyś alternatywne dla ramek rozwiazania, możesz je przejrzeć: http://pornel.net/ramki

Sombria napisał(a):

Originally posted by Zajec:

Cały ten błąd występował chyba tylko w starszych wersjach Opery? Ja sprawdziłem na Twojej stronie zachowanie z # zamiast #a i było OK. Na pewno masz najnowszą wersję Opery?


Ha, czyli dobrze zapamiętałam, że jest już "naprawiony". Niestety, potwierdzam, że czasem się pojawia, ale nie na stałe - u mnie znika po wyczyszczeniu czegoś w historii. A pojawia się przy intensywnym testowaniu jakiejś strony.

warlock24 napisał(a):

Originally posted by Zajec:

porneL spisał kiedyś alternatywne dla ramek rozwiazania, możesz je przejrzeć: http://pornel.net/ramki



rozwiazałem wszystkie problemy wymienione w tym artykule smile
- podstrony można już dodawać do zakładek
- da się wchodzić na podstrony za pomoca linku (np. http://warlock24.googlepages.com/index.html#sdvideoplayer )
- da się też za pomoca wklepywania linku w pasku adresu niestety enter nie działa i po wklepaniu trzeba nacisnać przycisk odświeżania p

damn im good smile

znacie jeszcze jakaś inna metodę przekazywania informacji z linku do javascriptu?

Zajec napisał(a):

No, prawie nieźle. Ostatni kłopot jaki Ci został to indeksowanie strony. Boty zazwyczaj nie posiadają obsługi JS, więc takie Google zgodnie z tym o czym informuje, nie przeczyta zawartości strony. Niestety, najlepiej nadal wychodzisz na tej zmianie hostingu. Do tego indeksowania możesz także dorzucić nie działanie strony w Operze Mini.