webForumDet fria alternativet

Gå till #top i annan frame

11 svar · 328 visningar · startad av Obbelix

ObbelixMedlem sedan okt. 2002257 inlägg
#1

Har en sida med en iframe.
I iframen finns ett låååångt formulär, så när man knappat in allt och trycker skicka så laddas iframen om och det kommer en tack-text längst upp. MEN man är ju fortfarande kvar "nere" på huvudsidan eftersom scrollningen sköts av den och ser därmed inte texten som finns längre upp.

Kan man på nåt sätt få till ett script på tack-sidan som gör att huvudsidan (parent) ska scrolla till "#top"?
Har försökt med en massa olika parent.location varianter utan att lyckas.

nitro2k01Medlem sedan aug. 20039 342 inlägg
#2
 
parent.window.scrollTo(0, 0);
ObbelixMedlem sedan okt. 2002257 inlägg
#3

Tyvärr så funkar det inte.

Får felet "Åtkomst nekad"

nitro2k01Medlem sedan aug. 20039 342 inlägg
#4

Åtkomst Nekad betyder i praktiken oftast att sidorna ligger under olika domäner (t ex https://www.foo.com/sida.html och https://www.bar.com/sida.html)
Pröva detta då:

window.open("#top","_parent");
ObbelixMedlem sedan okt. 2002257 inlägg
#5

Ja, det stämmer att sidorna ligger under olika domäner, och dessvärre måste de göra det beroende på lite olika serverkomponenter.

Koden:

window.open("#top","_parent");

Funkar inte den heller. Det som händer är att sidan som fanns i iframen tar huvudsidans plats.

nitro2k01Medlem sedan aug. 20039 342 inlägg
#6

Kan man inte göra så att iframe-sidan skickar en till en sida på parent-domänen. Denna sida i sin tur sänder parent.window.scrollTop

ObbelixMedlem sedan okt. 2002257 inlägg
#7

Nja. Saken är den att jag bara har tillgång till det som finns iframen. Så jag har ingen möjlighet att påverka vad som ska laddas i parentframen.

Har testat lite med att sätta focus() på ett form-element på tacksidan. Det blir inte 100% snyggt eftersom iframen börjar ca 100px ner på huvudsidan, men finns ingen annan lösning så får det bli så.

ObbelixMedlem sedan okt. 2002257 inlägg
#8

Gjorde som så att jag la en <a name="toppen"></a> i toppen på tacksidan, samt att på "förstasidan" la till #toppen i form action.

Blir ju inte riktigt som jag tänkt, men det duger.

Är det nån som kommer på nåt bättre förslag så är det välkommet!

nitro2k01Medlem sedan aug. 20039 342 inlägg
#9

Men vänta nu... Skrollas parent-framen? Det är väl iframen som skrollas?
Varför inte bara:

window.scrollTo(0, 0);
ObbelixMedlem sedan okt. 2002257 inlägg
#10

Huvudsidan har en iframe med höjden 2500 pixlar. Detta gör att skollningen sköts av huvudsidan, och det ska vara så pga att annars ser det inte bra ut. Så ja, det är parentframen (huvudsidan) som ska skrollas till 0,0 om det går.
Har testat att skrolla iframen till 0,0, men eftersom den inte innehåller nån skrollist så händer inget.

nitro2k01Medlem sedan aug. 20039 342 inlägg
#11

Vild gissning:

window.open("javascript:void(window.scrollTo(0, 0))","_parent");

Edit: som vanligt på wF så säras java och script, så du måste ta bort mellanslaget för att det ens ska finnas en chans att det ska funka.

Edit 2: La till void

ObbelixMedlem sedan okt. 2002257 inlägg
#12

Tyvärr så funkade inte detta script heller. Hände absolut ingenting.

130 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)