ugrás a tartalomhoz

Nem frissülő iframe

sEEcher · 2010. Okt. 22. (P), 01.51
Sziasztok!

Adott egy iframe, ami a tartalom felett "lebegve" minden lapon megjelenik. A probléma az, hogy másik lapra való navigáláskor ennek az iframe-nek nem szabadna frissülnie. A kérdésem tehát az lenne, hogy létezik-e valami olyan megoldás, amivel az oldalon való lépegetéskor az iframe nem töltődik újra. Most nem teljes reloadról beszélünk, csupán refreshről.

A válaszokat előre is köszi!

Üdv,
Makay
 
1

Frame vagy AJAX

Poetro · 2010. Okt. 22. (P), 02.56
Vagy <iframe> helyett <frame>-ekkel oldod meg, vagy pedig AJAX-ot használsz (és nem az edények elmosására).
2

...

sEEcher · 2010. Okt. 22. (P), 07.53
Igen, ezt több helyen olvastam, hogy AJAX-szal talán megoldható. A kérdés már csak az, hogy hogyan. Őszintén bevallva az AJAX tudásom egyenlő a nullával. Nagy felkészültséget igényel a probléma megoldása? A frame ebben az esetben nem jó.

Köszi a választ!
3

Betöltés

Poetro · 2010. Okt. 22. (P), 08.14
Az oldaladon levő linkhez JavaScripttel hozzácsatolsz egy [/code] eseménykezelőt, ami AJAX-szal betölti a kívánt oldalt, majd lecseréli az oldal HTML-ének egy részét az AJAX-szal betöltött tartalommal. A felkészüléshez alapvető JavaScript ismeret szükséges, valamint érdemes valamilyen AJAX-ot ismerő keretrendszer alapszintű elsajátítása.
4

...

sEEcher · 2010. Okt. 22. (P), 08.20
Uh... Tudom, hogy pofátlan, de tud valaki segíteni a kivitelezésben? Egyetemistaként már egyáltalán nem fér bele plusz két nyelv elsajátítása.
5

Egy nyelv mind felett

Poetro · 2010. Okt. 22. (P), 08.29
Itt egyetlen nyelvről, a JavaScriptről van szó. És ha egyetemistaként nem fér bele, akkor mikor fog? Ha valaki bármikor is programozással akar foglalkozni két-három-négy nyelv elsajátítása nem lehet akadály. De persze lehet mással is foglalkozni.
6

...

sEEcher · 2010. Okt. 22. (P), 08.51
Rendben. Csak az a baj, hogy én itt most párhuzamosan tanulok több programnyelvet kötelezően és a szak még csak nem is programozás-only. Elhiheted, nem lustaságból kérek segítséget.
7

jQuery + Ben Alman

Poetro · 2010. Okt. 22. (P), 11.46
jQuery és 2 Ben Alman által írt kiegészítő (jQuery urlInternal, jQuery hashchange event) segítségével az egész mindössze kb. 20 sorban megírható.
// DOM ready esetén indulunk.
jQuery(function ($) {
  var reInternal = $.urlInternalRegExp(),
      id = '#main';

  // Bármilyen linkre kattintunk, lekezeljük.
  $('a').live('click', function (event) {
    var link = $(this),
        href = link.attr('href'),
        match, uri;

    // Ha a link belső URL, akkor ahelyett hogy odaugranánk, 
    // csak megváltoztatjuk a hash-t.
    if ($.isUrlInternal(href)) {
      // Megnézzük hogy abszolút URI-nek van-e álcázva,
      // ha igen, akkor leszedjük róla az abszolút részt.
      match = href.match(reInternal),
      uri = (match && href.substring(match[0].length - 1)) || href;

      // Megváltoztatjuk a hash-t az URI-re
      window.location.hash = '!' + uri.replace(/#.*/, '');
      // Megakadályozzuk az eseményt.
      event.preventDefault();
    }
  });

  // Kezeljük a megváltozott hash eseményt, és kiváltjuk is, hátha már van hash.
  $(window).hashchange(function () {
    var hash = window.location.hash,
        match = hash && hash.match(/^#?!(\/.*)/);

   // Ha megfelelő formátumú a hash, akkor betöltjük a tartalmat a content részbe.
   if (match) {
      // A #main gyermekeire van szükségünk.
      $(id).load(match[1] + ' ' + id + '>*', function () {
        // Betöltődött a tartalom, megnézzük van-e cím, és frissítjük az oldal címét
        var h1 = $('h1');
        document.title = (h1.length ? h1.text() + ' - ' : '') + 'BBQ példa - poetro.hu';
      });
    }
  }).hashchange();
});
A kód kipróbálható a saját homokozómban.
8

...

sEEcher · 2010. Okt. 22. (P), 20.26
Köszi szépen a kódot! Ez PHP-ba ( echo ""; ) rakva is működik?
9

Nem értem a kérdést

Poetro · 2010. Okt. 22. (P), 20.44
Mivel a fenti kód JavaScript, ezért az, hogy hogyan kerül a HTML oldalra egyáltalán nem releváns.
10

...

sEEcher · 2010. Okt. 22. (P), 21.07
http://skl-projekt.hu/news.php

Kétségtelen, hogy valamit nagyon elrontottam, de 7 órányi utazás után már élni is alig bírok. Az ablak alján található "tesztelés alatt" felnyíló fülben egy iframe-es online IRC -chatkliens található. Ha az illető bejelentkezik, akkor nem mozoghat az oldalon, különben az iframe újratöltődik és újra jelentkezhet befelé.
11

kiegészítők

Poetro · 2010. Okt. 22. (P), 21.18
Mondjuk a kiegészítőket elfelejtetted felmásolni a szerverre, mivel 404-et adnak vissza.
12

...

sEEcher · 2010. Okt. 22. (P), 21.48
Igazad van, 404-et dobnak vissza. A baj ott kezdődik, hogy nem felejtettem el feltölteni őket. Ott vannak a szerveren. A jogosultságaik ránézésre jók. Fogalmam sincs, hogy mi lehet. Írok az üzemeltetőknek.
13

...

sEEcher · 2010. Okt. 22. (P), 21.58
Na alakul, viszont több probléma is akad. A teszt során egyszer sem maradt meg az iframe tartalma, ráadásul több lap be sem jött.