Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [jQuery] Linki - problem z href i onClick
Szadow
post 11.12.2010, 15:15:53
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 6
Dołączył: 21.11.2010

Ostrzeżenie: (0%)
-----


Witajcie!
W jQuery jestem początkujący i w trakcie pracy napotkałem problem:

Mam kod w jQuery że po kliknięciu w link w pewnym divie pojawia się zawartość pliku href'a (kod niżej) tylko że po kliknięciu w link przechodzi na tą stronę!
Próbowałem return 0; ale to nie działa.

Wpadłem na inny pomysł, że w "a" będzie onclick="java script:go('sciezka')", ale wtedy pojawia siew konsoli błędów go is not defined, ale w skrypcie mam tą funkcję!

Z góry dziękuje za pomoc.

[JAVASCRIPT] pobierz, plaintext
  1. var go = function(href) // probowalem z function go(href)
  2. {
  3. $('document').ready(function()
  4. {
  5. $('#menu a').click(function()
  6. {
  7. return 0; // w <a onclick="return 0;"></a> też próbowałem
  8. $('value').hide("slow");
  9. //var href = $(this).attr('href');
  10. $.get(href,function(data)
  11. {
  12. $('#value').html(data);
  13. });
  14. $('#value').show("slow");
  15. });
  16. });
  17. }
[JAVASCRIPT] pobierz, plaintext


Ten post edytował Szadow 11.12.2010, 15:16:31


--------------------
Pomogłem? Kliknij przycisk Pomógł. ;)
Go to the top of the page
+Quote Post
markonix
post 11.12.2010, 15:22:22
Post #2





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


W href daj #, a wartość przekazuj jakkolwiek inaczej (title, dowolny atrybut, klasa).


--------------------
Go to the top of the page
+Quote Post
Szadow
post 11.12.2010, 15:28:22
Post #3





Grupa: Zarejestrowani
Postów: 47
Pomógł: 6
Dołączył: 21.11.2010

Ostrzeżenie: (0%)
-----


@up obeszło się bez #, ale o co ci chodzi z tym inaczej?

Poradziłem sobie, nie przenosi tyle że po kliknięciu pustka, nic sienie dzieje a w konsoli błędów: Nic.

Kod:
[JAVASCRIPT] pobierz, plaintext
  1. $('document').ready(function()
  2. {
  3. $('#link').click(function()
  4. {
  5. alert('a'); // nie wyświetla - jest błąd
  6. $('#value').hide("slow");
  7. var href = $('#link').attr('href');
  8. $.get(href,function(data)
  9. {
  10. $('#value').html(data);
  11. });
  12. $('#value').show("slow");
  13. });
  14. });
[JAVASCRIPT] pobierz, plaintext


  1. <div id="menu">
  2. <a href="gr.html" onclick="java script:return false;" id="link">Strona Główna</a>
  3. </div>


Ten post edytował Szadow 11.12.2010, 15:30:21


--------------------
Pomogłem? Kliknij przycisk Pomógł. ;)
Go to the top of the page
+Quote Post
markonix
post 11.12.2010, 15:40:54
Post #4





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

Ostrzeżenie: (0%)
-----


Sporą zaletą jQ, z której moim zdaniem należy korzystać to 100% rozdzielnie kodu JS od kodu HTML.

Robisz to np. za pomocą klasy linków np. "loadlinks", a jQuery piszesz "$('.loadlinks').click(function()" czyli funkcja click na elementach z klasą loadlinks.
Wtedy unikasz kodu JS (tego onClick) w htmlu. W href dajesz #, a np. w tiitle (ale może być cokolwiek innego) dajesz nazwę podstrony, którą ma wczytać.
Np.
Kod
<a href="#" class="loadlinks" title="o_mnie">O mnie</a>

a jQuery:

Kod
var url = $this.attr('title') + '.php'; // tworzysz argument do funkcji load czyli nazwę pliku, ewentualnie ścieżkę
$('#jakis_div').load(url);


(wszystko z palca)

Ten post edytował markonix 11.12.2010, 15:43:06


--------------------
Go to the top of the page
+Quote Post
Szadow
post 11.12.2010, 15:50:07
Post #5





Grupa: Zarejestrowani
Postów: 47
Pomógł: 6
Dołączył: 21.11.2010

Ostrzeżenie: (0%)
-----


Poradziłem sobie, aż wstyd się przyznać że w script zamiast src dałem href.

Temat do zamknięcia, i plus z próbę pomocy.


--------------------
Pomogłem? Kliknij przycisk Pomógł. ;)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 26.06.2025 - 12:30