Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [AJAX][JavaScript] problem ze skrypte pod IE
Forum PHP.pl > Forum > Przedszkole
mac_synak
Witam potrzebuje pomocy odnośnie skryptu js, który ładuje stronę bez przeładowywania jej w przeglądarce

Tak wygląda index.php w miejsce diva "content" ładowana jest zawartość "loader.php" w zależności o wybranej opcji w MENU GŁÓWNYM, które jest w pliku index.php ( to śmiga bez zarzutu).
Problem jest z SUBMENU wyłącznie pod IE, które znajduje się w "loader.php", a nie w "index.php", jak to można poprawić pod IE, proszę o pomoc, bo jestem w tym temacie zielony sad.gif

  1. <script type="text/javascript">
  2. $(document).ready(function () {
  3.  
  4.  
  5. $.history.init(pageload);
  6.  
  7. $('a[href=' + window.location.hash + ']').addClass('selected');
  8.  
  9. $('a[rel=ajax]').click(function () {
  10.  
  11. var hash = this.href;
  12. hash = hash.replace(/^.*#/, '');
  13. $.history.load(hash);
  14.  
  15. $('a[rel=ajax]').removeClass('selected');
  16. $(this).addClass('selected');
  17. $('#body').hide();
  18. $('.loading').show();
  19.  
  20. getPage();
  21.  
  22. return false;
  23. });
  24. });
  25.  
  26. function pageload(hash) {
  27. if (hash) getPage();
  28. }
  29.  
  30. function getPage() {
  31. var data = 'page=' + encodeURIComponent(document.location.hash);
  32. $.ajax({
  33. url: 'loader.php',
  34. async: false,
  35. cache: false,
  36. type: "POST",
  37. data: data,
  38. success: function (html)
  39. {
  40. $('.loading').hide();
  41. $('#content').html(html);
  42. $('#body').fadeIn('slow');
  43.  
  44. }
  45. });
  46. }
  47.  
  48. </script>
  49. <link rel="stylesheet" href="images/style.css" type="text/css" />
  50.  
  51. <!--[if lte IE 7]>
  52. <link href="images/ie6.css"
  53. rel="stylesheet" type="text/css" />
  54. <![endif]-->
  55.  
  56. </head>
  57.  
  58. <div id="wrapper">
  59.  
  60.  
  61. <div id="logo"></div>
  62. <div id="menu_tlo">
  63. <ul id="menu">
  64. <li><a href="#O_nas" rel="ajax" title="Zespół Muzyczny Sonus">O nas</a></li>
  65. <li><a href="#Dlaczego_my" rel="ajax" title="Dlaczego zespół Sonus?" >Dlaczego my?</a></li>
  66. <li><a href="#Oferta" rel="ajax" title="Oferta muzyczna zespołu">Oferta</a></li>
  67. <li><a href="#FAQ" rel="ajax" title="Najczęśćiej zadawane pytania">FAQ</a></li>
  68. <li><a href="#Kontakt" rel="ajax" title="Kontakt z zespołem">Kontakt</a></li>
  69. </ul>
  70. </div>
  71.  
  72. </div>
  73.  
  74. <div class="loading"></div>
  75. <div id="body">
  76. <div id="content">
  77. <!-- Ajax Content -->
  78. </div>
  79. </div>
  80. </body>
  81. </html>
  82.  


Poniżej loader.php z SUBMENU, które pod IE nie działa ( wyświetla się, ale nie zmienia zawartości) , dopiero odświeżenie w przeglądarce powoduje przeładowanie treści.

  1. <?
  2.  
  3. switch($_POST['page']) {
  4. case '#O_nas' : $page = '
  5. <div id="foto">
  6. <ul id="submenu">
  7. <li><a href="#O_nas" rel="ajax" title="Biografia zespółu muzycznego Sonus">Zespół Muzyczny Sonus</a></li>
  8. <li><a href="#Galeria" rel="ajax" title="Galeria zespółu muzycznego Sonus">Galeria</a></li>
  9. </ul>
  10.  
  11. <div id="tekst">Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industrys standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.</div></div>'; break;
  12.  
  13. }
  14.  
  15. echo $page;
  16. ?>
exood
może stara wersja jQuery? Pobierz najnowszą. Ja ostatnio też miałem jakiś problem z ajaxem przez jquery - coś pod ie nie zawsze działało i nie wiedziałem dlaczego. Podmiana z wersji 1.3.coś na najnowszą 1.4.coś pomogło.
mac_synak
Niestety nie pomogło, podmieniłem na 1.4.2, nadal to samo, pod IE submenu nie działa... sadsmiley02.gif A wie ktoś może jak wywołać skrypt js z index.php na stronie loader.php?questionmark.gif Bo chyba w tym tkwi problem...
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.