ugrás a tartalomhoz

JS paraméter átadás

Hasszan · 2012. Ápr. 18. (Sze), 09.55
Üdv!

Adott az alábbi képgaléria és a rajta lévő horizontal scroll, amit JS-sel oldottam meg.
http://maczolaci.hu/nonplusz/collection_07_look.php?akt=1

A gondom az, hogy a scroll minden egyes oldalbetöltésnél a kezdő pozícióba ugrik, és ez zavaró mikor az éppen aktuális kép lecsúszik róla. Hogy tudnám eltárolni a scroll aktuális pozícióját és azt átadni a következő oldalletöltésnek?
Persze több kollekció is van, tehát kollekció váltáskor újra a kezdő pozíciónál kellene lennie a scroll-nak.
 
1

GET

Poetro · 2012. Ápr. 18. (Sze), 10.28
A kép linkjéhez hozzáadod mondjuk hash-ként vagy GET változóként attól függően hogy kliens vagy szerver oldalon akarod kezelni az odagörgetést. Ezek a változókat kiolvasod a megfelelő oldalon, majd módosítod a tartalmat.
2

Ha mar JavaScript, akkor

Ajnasz · 2012. Ápr. 18. (Sze), 10.45
Ha mar JavaScript, akkor miert nem csak a kepet csereled le, az egesz olal ujratoltese helyett?
3

Vagyis:

Pepita · 2012. Ápr. 18. (Sze), 15.16
A kis képre kattintáskor indíts egy ajax kérést.
4

JS-ben nem vagyok igazán

Hasszan · 2012. Ápr. 19. (Cs), 09.20
JS-ben nem vagyok igazán otthon, ezért használtam php-t helyette. De tényleg jobb lenne újratöltés nélkül csak a képeket változtatgatni. Ha esetleg tudtok hozzá kódot is küldeni, azt megköszönném.
5

PHP-vel egyszerűbb a

Hidvégi Gábor · 2012. Ápr. 19. (Cs), 09.39
PHP-vel egyszerűbb a problémát megoldani.
6

Kinek

Poetro · 2012. Ápr. 19. (Cs), 10.18
Kinek egyszerűbb? Egyébként pusztán CSS-sel is meg lehet oldani, egyszerűen a <div>-nek adsz egy id-t, mondjuk item-1, és ezek után minden linkhez megadod a megfelelő hash-t, ebben az esetben collection_07_look.php?akt=1#item-1. Kicsit még fel is lehet dobni egy :target szelektorral, mondjuk
#collectionThumb > div:target img {
  opacity: 1;
}
7

Hasszannak

Hidvégi Gábor · 2012. Ápr. 19. (Cs), 10.30
JS-ben nem vagyok igazán otthon
8

Meglévő használata

Hasszan · 2012. Ápr. 19. (Cs), 12.50
Aztán közben rájöttem, hogy ha már úgyis használok egy paramétert akkor ugyanazt felhasználva is tudom pozicionálni a listát.
9

Köszönöm mindenkinek a

Hasszan · 2012. Ápr. 25. (Sze), 18.52
Köszönöm mindenkinek a válaszokat.

Viszont lenne még egy kérdésem.
Létezhet az, hogy ezen az elcseszett IE-n a
"document.anchors.elementName.onclick = " vagy a
"document.anchors.elementName.href = "
paraméterátadás sem működik?

A többi böngészővel simán működik.
10

Konkrétan nem tudom,

Pepita · 2012. Ápr. 25. (Sze), 19.44
de eddigi (szerény) IE-tapasztalataim alapján simán lehet.
Én se vagyok egy js-specialista, én épp ezek miatt használok jquery-t. Azzal könnyebb áthidalni az ilyen problémákat (ill. áthidalja helyettem).

Különben melyik IE?
11

A 9-es ráadásul. A korábbi

Hasszan · 2012. Ápr. 25. (Sze), 23.15
A 9-es ráadásul. A korábbi verziókon meg sem merem nézni az oldalt. :-)
12

Szabványos

Poetro · 2012. Ápr. 26. (Cs), 06.51
A document.anchors egy elemgyűjtemény (HTMLCollection), ami a dokumentumban levő horgonyokat sorolja fel (ezek nem linkek, ezek horgonyok, amikre oldalon belül lehet hivatkozni).

Használj szabványos DOM kiválasztó metódusokat. Ebben az esetben mondjuk:
var links = document.getElementsByTagName('a'), l = links.length, i, link, anchor;
for (i = 0; i < l; i++) {
  link = links[i];
  // csak akkor anchor ha nincs href tulajdonsága
  if (!link.hasAttribute('href')) {
    // itt majd csinálunk vele valamit.
  }
}
Valamint már azt az alapfelvetést sem értem, miért van szükséged az anchor-okra, mikor azok nem is linkek, ergo nem viselkednek linkként. Nem lehet, hogy neked a linkek kellenek?
13

Igen

Hasszan · 2012. Ápr. 26. (Cs), 11.27
Lehet egyszerűbb lenne simán név alapján hivatkozni rá, mint az anchors tömb elemeként. Kipróbálom.
14

IE alatt

Hasszan · 2012. Ápr. 26. (Cs), 12.23
IE alatt ez a hivatkozás sem működik "document.links.collectionA.href"
A "collectionA" egy <a> elem neve.