Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: ładowanie strony przez onmouseover
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
cheschire_kotek
Witam,

proszę o podpowiedź jak mogę w divie galeria aktywować odnośnik z wykorzystaniem funkcji onmouseover:
  1. <?php
  2. $id='pic_1';
  3. if(isset ($_GET['id']) && $_GET['id']) $id=$_GET['id'];
  4. ?>
  5. <head>
  6. <title>Glina i Drewno</title>
  7. </head>
  8. <body>
  9. <div id="top">
  10. <div id="NAGLOWEK">
  11. <p style="font-size:12px; font-family: Verdana; margin-left:690px; margin-top:3px; color:#FFFFFF">
  12. <a href="?id=zakupy"><span class="color">ZAKUP</span>Y</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href="?id=kontakt"> K<span class="color">ONTAKT</span>
  13. </a>
  14. </p>
  15. </div>
  16. <div id="MENU">
  17. <p style="margin-left:10px; margin-top:130px; color:#A2846E"> Glina </p>
  18. <img src="fotki/hr.jpg" style="margin-left: 10px" alt=""/>
  19. <p style="margin-left:10px; margin-top:15px; color:#FFFFFF"><a href="?id=pic_1">Drewno</a></p>
  20. </div>
  21. <div id="TRESC">
  22. <?php
  23. include("inc/$id.php");
  24. ?>
  25. </div>
  26. <div id="GALERIA">
  27. <table cellspacing="5" style="margin-left:50px">
  28. <tr>
  29. <td><a href="?id=pic1_"><img src="fotki/mpic1.jpg" height="110" alt=""/></a></td>
  30. <td>&nbsp;</td>
  31. <td><a href="?id=pic2_"><img src="fotki/mpic2.jpg" height="110" alt=""/></a></td>
  32. <td>&nbsp;</td>
  33. <td><a href="?id=pic3_"><img src="fotki/mpic3.jpg" height="110" alt=""/></a></td>
  34. <td>&nbsp;</td>
  35. <td><a href="?id=pic4_"><img src="fotki/mpic4.jpg" height="110" alt=""/></a></td>
  36. <td>&nbsp;</td>
  37. <td><a href="?id=pic5_"><img src="fotki/mpic5.jpg" height="110" alt=""/></a></td>
  38. <td>&nbsp;</td>
  39. </tr>
  40. </table>
  41. </div>
  42. </div>
  43. </body>
  44. </html>

Z góry dziękuję,
Tomek
thek
Wyjaśnij CO ma się dziać po najechaniu na miniaturę? Pokazać pełnowymiarowy obrazek? Komputer ma zacząć tańczyć Ci pod biurkiem? winksmiley.jpg GDZIE ma wyświetlić? W nowym oknie? Poniżej miniatur? Na telewizorze w pokoju obok? winksmiley.jpg Bądź konkretniejszy. Aktywacja linka to dość mgliste pojęcie haha.gif
slammer
hmm ze słowa "aktywować odnośnik" rozumię, że po najechaniu na div chcesz zasymulować kliknięcie w link? Można to zrobić tak:
Kod
onmouseover="location.href = 'link'"



p.s.
dziwny kod tworzysz winksmiley.jpg
Kod
<td>&nbsp;</td>
blink.gif

Kod
$id='pic_1';
if(isset ($_GET['id']) && $_GET['id']) $id=$_GET['id'];

masło maślane...
Kod
$id = ($_GET['id']) ? $_GET['id'] : 'pic_1';
cheschire_kotek
Dziekuje za odzew. Thek: sprawa wyglada tak, mam div TRESC, w który wczytuję pliki php pic_1 pic_2 itd. Pliki teraz ładowane są przez naciśnięcie jednego z obrazków umieszczonych w divie GALERIA. Chciałem, aby strona była ciut bardziej dynamiczna, żeby najeżdżając kursorem na zdjęcie ładował się jednokrotnie plik php. Dlatego kombinuję z onMouseOver. A może funkcje roll dałoby się jakoś użyć?

Slammer: dziękuję za kod. Czy da się takie zdarzenie ładowania strony wykonać tylko raz?

ps.
Dziwne kody? smile.gif wydawało mi się, że każda komórka tabeli musi coś w sobie mieć, mi najłatwieć wstawić spacje. Czy to błąd? Jeżeli chodzi o:
Kod
$id='pic_1';
if(isset ($_GET['id']) && $_GET['id']) $id=$_GET['id'];

to istotnie nie do końca wiem o co w nim chodzi, cieszy mnie że działa. Jest zmienionym metodą prób i błędów kodem, który jakiś dobry człowiek mi podsunął tutaj na forum smile.gif
Kod
$id='galeria_1';
if( isset($_GET['id']) && preg_match('/^galeria_[0-9]+$/',$_GET['id'])) $id=$_GET['id'];
thek
Na Twoim miejscu zrezygnowałbym z tabel i sobie miniaturki w DIV ładnie zrobił. W zdarzeniu onMouseOver możesz wywołać choćby:
Kod
document.getElementById(element_miniaturki).click()

Ale to jedna z możliwości smile.gif
Zaś kod kogoś z forum sprawdzał czy istnieje w jakiejkolwiek galerii takie zdjęcie smile.gif
slammer
proponuję jquery -> ajax

  1. <div id="tresc">...</div>


na obrazku robisz:
  1. function ajax(id) {
  2. $.ajax({
  3. type: "POST",
  4. url: "twojplikphp.php",
  5. data: "id="+id,
  6. success: function(msg){
  7. $('#tresc').html(msg);
  8. });
  9. }
  10. <a href="?id=pic1_"><img src="fotki/mpic1.jpg" height="110" alt="" onmouseover="ajax('pic1_')" /></a>

coś w tym kierunku kombinuj.

Cytat
wydawało mi się, że każda komórka tabeli musi coś w sobie mieć, mi najłatwieć wstawić spacje.

jesli komórka ma mieć tylko spacje to po co ją robić snitch.gif można przecież zastosować marginesy tongue.gif
cheschire_kotek
Slammer: strona z kodem od Ciebie ładuje się bez błędu. Pojawia się natomiast błąd przy wywołaniu funkcji ajax(id) - obiekt nie obsługuje tej właściwości lub tej metody. Biblioteke mam mintAjax zadeklarowaną w head <script type="text/javascript" src="mintAjax.js"></script>. Czy prawidłowo? Kod po niewielkiem dostosowaniu wygląda tak:
  1. <div id="TRESC">
  2. <?php
  3. include("inc/$id.php");
  4. ?>
  5. </div>
  6.  
  7. <div id="GALERIA">
  8. <script>function ajax(id) {
  9. $.ajax({
  10. type: "POST",
  11. url: "index.php",
  12. data: "id="+id,
  13. success: function(msg){
  14. $('#TRESC').html(msg);
  15. }});
  16. };
  17. </script>
  18. <table cellspacing="5" style="margin-left:50px">
  19. <tr>
  20. <td><a href="?id=pic1_"><img src="fotki/mpic1.jpg" height="110" alt="" onmouseover="ajax('pic_1')"/></a></td>

Proszę o pomoc, jak to ożywić. Sam niczego mądrego już nie mogę wymyślić tongue.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.