» »

pozicija strani z JavaScriptom

pozicija strani z JavaScriptom

pazii ::

Rad bi dosegel, da se mi stran ob reloadanju postavi na isto stran kot je bila pred postanjem spremeljivk.

Funkcijo za scrollanje na pravo mesto sem napisal:

function jumpScroll() {
window.scroll(0,150);
}

Zdaj pa moram le še dobiti pozicijo strani pred postanjem in seveda x in y postati naprej.

Dobil sem to funkcijo, ki pa mi ne dela:

function findPosition() {
var myScrollX;
var myScrollY;
(isIE) ? myScrollX = document.body.scrollLeft: myScrollX =
window.pageXOffset;
(isIE) ? myScrollY = document.body.scrollTop: myScrollY =
window.pageYOffset;
alert(myScrollX);
}

alert sem postavil samo zato da vidim, če dela. Ampak dela ne sploh.:(

Aja, input pa izgleda takole:

< input type=image src="nakup.gif" onclick="zaloga(0.00); findPosition();">

njok ::

Ugibam -- mogoce zato, ker prebrane vrednosti ne posljes naprej?

pazii ::

Vrednosti bom že poslal, ko mi jih bo funcija findPosition() vrnila. Problem je, ker mi funcija findPosition() ne dela.

Jakob_X ::

em..kaj ko bi napisal se kodo za isIE? brez tega seveda ne bo delovalo.

pazii ::

Hvala Jakob_X.

Kot vidiš se z JavaScriptom še nisem ukvarjal.

Zdaj ko mi je uspelo dobiti pozicijo strani bi te vrednosti postal naprej. naredil sem dva hidden inputa in v fukcijo dodal to:

x=document.form1;
x.posx.value = myScrollX;
x.posy.value = myScrollY;

Problem je pa ta da imam na strani več enakih formov, katere generira PHP skripta in sicer form1, form2, form3, ...

seveda mi sedaj funcija dela samo za prvi form. Jasno mi je, da moram spremeniti prvo od zgoraj navedenih vrstic, ne vem pa kako.

Jakob_X ::

Ni mi cisto jasno kaj sprasujes. Ce te prav razumem bi rad isto nastavil tudi za form2 in form3 samo v tem primeru preprosto to tudi nastavis pa je. Seveda morajo tudi ostale forme na strani imeti te hidden inpute. Saj verjetno se da to lepse narediti ampak je prevec zgodaj zjutri za mislit :)

document.form1.posx.value = myScrollX;
document.form1.posy.value = myScrollY;
document.form2.posx.value = myScrollX;
document.form2.posy.value = myScrollY;
document.form3.posx.value = myScrollX;
document.form3.posy.value = myScrollY;

pazii ::

Hvala. Je grdo, ker imam 40 formov, ampak deluje. :D

Kako pa po postanju preberem te spremenjivke?

Kot npr. v PHP-ju $_POST['posx'].

v funkciji:

function jumpScroll() {
window.scroll(posx,posy);
}


bi moral dobiti te vrednosti, da se mi bo stran scrollala na isto pozicijo kot je bila pred submitanjem.

Jakob_X ::

Ce jih imas 40 potem pa napisi en loop da ne bo tako grdo :)

Ce pravilno domnevam uporabljas PHP za generiranje strani. Zakaj potem preprosto v PHPju ne preberes vrednosti, ki si jih dobil iz prejsne strani in jih vstavis v jumpScroll funkcijo namesto posx,posy? Ce pa ne uporabljas PHPja ali cesa podobnega potem pa ups :) Iz javascripta POSTanih vrednosti ne mores brati AFAIK. Bi moral uporabljati v tem primeru GET.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

C# Pomoč

Oddelek: Programiranje
131398 (1223) jizzer
»

En iziv....

Oddelek: Izdelava spletišč
161318 (992) alesrosina
»

Drop down meni!

Oddelek: Izdelava spletišč
101944 (1697) ACE
»

Kako se tole naredi?

Oddelek: Izdelava spletišč
261495 (1195) njok
»

Collision detection

Oddelek: Programiranje
81915 (1667) Senitel

Več podobnih tem