ugrás a tartalomhoz

Nincs frame nincs sirás

e107lac · 2004. Nov. 28. (V), 01.22
Hellotok!!

Az lenne a kérdésem hogy hogyan tudnám megoldani azt hogy, egy html oldalon levő linkekre kattintva az ne egy új oldalt töltsön be hanem mondjuk egy táblázatba töltse be a tartalmat. Iframe kizárva. Gondolom nem lehet valami gázos megoldani csak kéne valami ugródeszka amin elindulhatnék.
Köszönöm
 
1

DOM

bagilevi · 2004. Nov. 28. (V), 10.17
DOM-mal tudod változtatni kliens oldalon az XHTML oldalt. Itt egy tutorial sok példával, de Google-val többet is találsz.

Ha a megjelenítendő adatokat szerverről szeretnéd lekérni, olvasd el ezt a cikket.

Bagi Levi
2

Ha nem nagy...

kgyt · 2004. Nov. 28. (V), 19.03
Esetleg az oldal letöltésekor letöltheted az összes tartalmat.

<div id="home" style="display: none">Home tartalma</div>
<div id="news" style="display: none">News tartalma</div>
<div id="products" style="display: none">Products tartalma</div>
<div id="contact" style="display: none">Contact tartalma</div>
Majd a stílus módosításával (display: block;) láthatóvá teheted, ha kell...

--
Szeretettel: Károly György Tamás
kgyt&kgyt.hu - http://kgyt.hu
3

Ez a megoldás jó, csak az m

e107lac · 2004. Nov. 28. (V), 20.06
Ez a megoldás jó, csak az még megoldható hogy a linkre kattintva a megfelelő div látszódjon, hogy ne kelljen csak egyszer elkésziteni az oldalt. Lehet hogy túl sokat kérdezek, pedig csak ugródeszkát kértem bocs.
4

JS

attlad · 2004. Nov. 28. (V), 20.23

<a onclick="document.getElementById('news').style.display = 'block';">news on</a>
<a onclick="document.getElementById('news').style.display = 'none';">news off</a>
Attila
5

tobb sebbol verzik

Jano · 2004. Nov. 28. (V), 20.35
Ez a megoldas ugyan megoldja a problemat, de tobb sebbol verzik!

- Ha nincs javascript nem fog latszani semmi.
- Mi van ha valaki kozepso gombbal kattint a linkre, hogy megnyissa azt uj tabba?
- A display:none -os dolgokat a felolvaso progik nem mindig olvassak fel.
- Kerdese, hogy Google mit csinal veluk! Meg esetleg rossz indulatu kodnak is nezheti!
- Mivel nem tortenik igazi oldal valtas, nem valtozik az URL es nem lehet pontosan linkelni a tartalmat!

Ezert egesz weboldalak kivaltasara nem tul jo megoldas. Kisebb oldal reszletek eltuntetesere, megjelenitesere hasznalhato maximum!
6

Kössz az eddigi segítséget

e107lac · 2004. Nov. 28. (V), 20.52
Igazad van Jano nekem az lenne igazán jó ha történne oldalváltás de ugy hogy ne iframe-mel, vagy frame-mel kelljen megoldani. Tehát van több link és az azokhoz tartozó oldalak, na meg van egy index oldal amin a linkek vannak és ott egy táblába vagy akár egy divbe akarom betölteni a többi oldalt. Hasonló elven mint ahogy a frame müködik.

Köszönöm

A többiek segítségéért is hálás vagyok biztos feltudom használni.

Mégegyszer köszönöm
8

szerver oldalon

Jano · 2004. Nov. 28. (V), 22.51
Csinald meg szerver oldalon. PHP-ban egyszeru esetben egy sima include!

(Bocs de nem tudom, hogy ehhez nem ertesz, vagy mas akadalya van.)

attila:
Igy van! A :target lenne a szep megoldas a fenti js helyett!
9

Már majdnem..

e107lac · 2004. Nov. 29. (H), 16.58
Nem vagyok valami nagy penge php-ből, de az include-s nem tudtam megoldani ugy hogy mikor a linkre kattintok akkor includolja az oldalt. Mert van már egy css-s megoldásom csak az nem megy IE alatt, ami végsősoron engem nem zavar csak hát a havernak kell.
10

miert

Jano · 2004. Nov. 29. (H), 17.16
Akkor pontositsunk:

Van egy tobb lapbol allo site-od, ahol a menu es a fejlec ugyanolyan minden lapon, csak a tartalom resz mas es mas.
Mivel ezek allando elemek ugy gondolod, hogy csak a valtozo reszt akarod megvaltoztani. De a kerdes az, hogy az az igeny, hogy VALOBAN ne toltodjon ujra a menu es a fejlec, csak a valtozo resz, vagy csak LATSZOLAG?


a)A kerdes, hogy meg akarod sporolni, le akarod egysuerusiteni a sajat munkadat? Hogy ami allando azt csak egy helyen kelljen valtoztatni stb.

b) Vagy a latogatonak akarod megoldani, hogy csak a valtozo dolog toltodjon ujra?

c) Vagy az oldal funkcioja megkivanja, hogy VALOBAN ne legyen oldal valtas?


Amennyiben az a) akkor szerver oldalon egyszeru megoldani.

Amennyiben b) akkor inkabb azt javaslom, hogy vessed el. Ezzel sokan probalkoztak, de igazabol mint lattad javascriptnel, iframe-nel sok a hatranya.

Ha c) akkor kompromisszumot kell kotnod valamilyen javascriptes megoldassal.
11

a verzó

e107lac · 2004. Nov. 29. (H), 17.35
Az "a" verzió lenne a legjobb ezt már tudtam az elején is, csak nem vagyok php zseni azt azt se tudom hogy fogjak neki, ezért gondoltam volna hogy valami más módon is megoldható. Esetleg számíthatok még segítségre, igaz már eddig is sokat kaptam :). Tehát akkor Az lenne a legegyszerűbb nektek is ha csak sima includolással müködne. Vagyis mikor a linkre kattintok a megfelelő html, vagy php oldal jöjjön be.

Köszönöm
12

[code]

Anonymous · 2004. Nov. 29. (H), 18.22
<?php

if (isset($_GET['link']))
{
  if (preg_match("|^[a-zA-Z]+\.(php|htm|html)$|",$_GET['link'])) $link="$_GET['link']"; else $link="main.php";
} else $link="main.php";

?>


Az oldalat megcsinálod mondjuk index.php-ba. első része a mellékelt kód
Abba belerakod az állandó részét a designak (jellemzően táblázatos formában)
include($link); ez ahhoz a részhez, ahol a változó tartalom van..
index.php?link=valami.htm -re a valami.htm kerül az includehoz.
ha nincs semmi, a main.php megy oda - kezdőlapként.
13

nagyon láma vagyok

e107lac · 2004. Nov. 29. (H), 19.10
ez az index.php
<?php

if (isset($_GET['link']))
{
  if (preg_match("|^[a-zA-Z]+\.(php|htm|html)$|",$_GET['link'])) $link="$_GET['link']"; else $link="main.php";
} else $link="main.php";

?>
<html>
<head>
<title>
</title>
</head>
<body>
<table>
<tr>
         <td><a href="/index.php?link=1.html">1</a></td>
         <td><a href="/index.php?link=2.html">2</a></td>
       
</tr>
<tr>
         <td><?php include("$link");?></td>
</tr>
</table>
</body>
</html>

Nem tudom jól csinálom, lehet hogy nem értettelek meg rendesen, de nekem nem jön be semmi, még hibaüzenet se, meg a main.php-nek mit kell tartalamznia
14

a kezdőlapot, de átírhatod

Anonymous · 2004. Nov. 29. (H), 20.57
a kezdőlapot, de átírhatod bármire. (két helyen van a kódban!)
Elvileg működnie kéne..
15

hiba

e107lac · 2004. Nov. 29. (H), 23.15
Előbb azért nem írhatott ki hibát mert valószinű nincs bekapcsolava a php.ini-ben de felrakatm egy másik tárhelyre ahol viszont ezt írja ki.Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in index.php on line 5
Azt mondom hogy ne offoljuk szét ezt a fórumot ha esetleg emailben tudnál adni még eyg kis infot azt megkösszöném

e107lac##kukac##vipmail.hu
7

válasz

attlad · 2004. Nov. 28. (V), 21.22
Eredeti kérdésben az volt, h linkre kattintva ne új oldal töltsön be, de változzon a tartalom. Ez JS nélkül én úgy tudom csak CSS3-as :target pszeudo osztály használatával lehetséges, az teljesen hozzáférhető kódot is eredményezne, csak az a baj, h Mozillán kívül nem sok böngésző támogatja. Szóval akkor az eredeti kérdésre, a kérdezőnek a válasz: vagy JS-t használsz a hátrányaival együtt vagy külön oldalakat ahogy azt szokás. Ha meg van még ezeken kívül más, jobb megoldás is akkor majd biztos leírja vki.

Attila
16

A problémára válasz volt

kgyt · 2004. Nov. 30. (K), 07.19
Felvetésed jogos, de a kérdésre adott válasz szvsz mégis jó.
Más kérdés, hogy a kérdés nem teljesen jó... ;-)

--
Szeretettel: Károly György Tamás
kgyt&kgyt.hu - http://kgyt.hu
17

auto display = 'none'

Anonymous · 2005. Nov. 17. (Cs), 18.00
Hogy lehetne azt megoldani, hogy például a news on-ra kattinva bezárja az addig megnyitott diveket? Az összes hivatkozás után illesszem be a document.getElementById('news').style.display = 'block' sort?