Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][JavaScript]Jquery Click nie dziala.
Forum PHP.pl > Forum > Przedszkole
Raven1122
Witam mam taki kod java script:

  1. $(document).ready( function() {
  2. $('ul.menu li').click(function() {
  3. var $id = $(this).attr('id');
  4. var $content = $('ul#' + $id).html();
  5. $('ul.menu li').removeClass("active");
  6. $(this).addClass("active");
  7. $('.submenu').html($content);
  8. });
  9. $("ul.submenu li a").bind('click', function(event) {
  10. var $link = $(this).attr('href');
  11. $('#content').load($link);
  12. event.preventDefault();
  13. });
  14. });



Menu normalnie dziala, czyli po kliknieciu pozycji w menu zas po kliknieciu pozycji w submenu przenosi poprostu do adresu do ktorego kieruje, i nie wykonuje zadnej instrukcji z

$("ul.submenu li a").bind('click', function(event) {
var $link = $(this).attr('href');
$('#content').load($link);
event.preventDefault();
});

refresh
lobopol
Pokaż online wraz z html.
Raven1122
mam to na localhoscie a nie mam serwera zaraz wstawie html

  1. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  2. <meta http-equiv="Content-Language" content="pl" />
  3. <meta name="Keywords" content="" />
  4. <meta name="Description" content="" />
  5. <meta name="Robots" content="NOINDEX, NOFOLLOW" />
  6. <meta name="Author" content="Michal Staniewski" />
  7. <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
  8. <script src="jscripts/menu.js"></script>
  9. <link rel="stylesheet" href="css/admin.css" type="text/css" />
  10. <title>MusicStack - Panel Administratora</title>
  11. </head>
  12.  
  13. <div id="container">
  14. <ul class="menu">
  15. <li id="home">Strona Główna</li>
  16. <li id="forum">Forum</li>
  17. <li id="newsy">Newsy</li>
  18. <li id="articles">Artykuły</li>
  19. <li id="settings">Ustawienia</li>
  20. </ul>
  21. <ul class="submenu"></ul>
  22. <div id="content"></div>
  23. </div>
  24. </body>
  25. </html>
  26. <ul id="forum" style="display:none;">
  27. <li><a href=''>Zarządzaj Kategoriami</a></li>
  28. <li><a href='pages.php?page=addforum'>Dodaj Forum</a></li>
  29. <li><a href=''>Ustawienia Forum</a></li>
  30. </ul>
  31. <ul id="newsy" style="display:none;">
  32. <li><a href=''>Dodaj Newsy</a></li>
  33. <li><a href=''>Edytuj Newsy</a></li>
  34. <li><a href=''>Usuń Newsy</a></li>
  35. <li><a href=''>Ustawienia Newsów</a></li>
  36. </ul>
  37. <ul id="articles" style="display:none;">
  38. <li><a href=''>Dodaj Artykuł</a></li>
  39. <li><a href=''>Edytuj Artykuł</a></li>
  40. <li><a href=''>Usuń Artykuł</a></li>
  41. <li><a href=''>Ustawienia Artykułów</a></li>
  42. </ul>


odswiezam

refresh
Dominis
  1.  
  2. $("ul.submenu li a").bind('click', function(event) {
  3. var $link = $(this).attr('href');
  4. $('#content').load($link);
  5. event.preventDefault();
  6. return false; //blokuje przejscie do href
  7. });


Nie pamiętam czy bind działa na dynamicznych elementach...
Można spróbować funkcje on
  1. $("ul.submenu").on('click', ' li a',function(event) {
  2. var $link = $(this).attr('href');
  3. $('#content').load($link);
  4. event.preventDefault();
  5. return false; //blokuje przejscie do href
  6. });
  7.  
  8.  

Raven1122
dalej nic sie nie dzieje
Dominis
daj sobie nowsza wersje jquery
  1. http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js

bo ta co masz
  1. <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

jest stara..
Raven1122
ok, teraz click reaguje, tylko teraz nie chce zaladowac pliku z href
Dominis
przewaznie href masz puste, wiec nie ma czego ladowac.
zainstaluj sobie firebuga, lub uruchom chrome i tam masz console do js.
Zobacz jaki błąd Ci sie wyswietla, po kliknieciu w submenu...
Raven1122
klikam addforum ktore ma napisane w href zeby zaladowalo php pgaes.php

  1. $("ul.submenu").on('click', function(event) {
  2. var $link = $(this).attr('href');
  3. $('#content').load($link);
  4. event.preventDefault();
  5. });


No i wciaz jest problem bo: na kliknieciu jest ul.submenu w tym momencie nie przenosi, ale jak dal do tego ul.submenu li a to juz przenosi do linku, a ja potrzebuje atrybut elementu a nie submenu wiec musze miec ul.submenu li a wiec nie bylo to poprawne rozwiazanie
Dominis
  1. $("ul.submenu").on('click', ' li a',function(event) {
  2. var $link = $(this).attr('href');
  3. $('#content').load($link);
  4. event.preventDefault();
  5. return false; //blokuje przejscie do href
  6. });


ja podalem cos takeig, a to bylo poprawnym rozwiazaniem.

zobacz do konsoli js jakie bledy masz,
zawsze mozesz sobie w kod wpisac console.log($link); i dowiesz sie co Ci pobiera..
Raven1122
w konsoli nie mam zadnych bledow, zaraz sprawdze to rozwianaznie

Dziala smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.