Plassere en side i IFRAME


For å justere innholdet på en side i IFRAME kan man bruke 2 forskjellige metoder.

Metode 1:
IFRAM'en setter du der du vil ha den.
Scriptet kan du godt plassere mellom HEAD-taggene,
men det kan også være grit å sette det sammen med IFRAME'en...
var PixelsFromTop og var PixelsFromLeft
bestemmer hvor siden som vises inne i IFRAME'en starter å vises fra toppen og venstre siden.

Tallet etter setTimeout('ScrollIframe()' bestemmer i millisekunder når visningssiden justeres.
NB: Hvis hovedsiden lastes senere enn justeringstiden til visningssiden er satt,
vil scriptet ikke fungere, og tiden må derfor tilpasses dette.
MEN, man må også tenke på at brukerne har forskjellige internettoppkoblinger,
noen bruker trege modemer mens andre har raske bredbåndsoppkpblinger...

<iframe name="LocationTest" src="iframeTest1.html" width="200" height="200"
frameborder="1" scrolling="yes" marginwidth="0" marginheight="0">
</iframe>

<script type="text/javascript" language="JavaScript">
<!--
function ScrollIframe() {
var PixelsFromTop = 360;
var PixelsFromLeft = 272;
window.LocationTest.scrollTo(PixelsFromLeft,PixelsFromTop);
}
setTimeout('ScrollIframe()',1000);
//--> </script>


Se eksempelet her


Metode 2:
IFRAME'en setter du opp på hovedsiden:

<iframe src="iframeTest2.html" width="200" height="200" frameborder="1"
marginwidth="0" marginheight="0" scrolling="yes">
</iframe>

Scriptet settes på den siden som skal vises inni IFRAME'en:

<script type="text/javascript" language="JavaScript">
<!--
function ScrollToLocation() {
var PixelsFromTop = 360;
var PixelsFromLeft = 272;
window.scrollTo(PixelsFromLeft,PixelsFromTop);
}
//-->

</script>


I BODY-taggen må du ha onload="ScrollToLocation()", det blir altså:

<body onload="ScrollToLocation()">

Med denne metoden behøver du ikke sette noe "load-time"
da opplastingen og justeringen skjer når hovedsiden er lastet ferdig,
men til gjengjeld må du ha kontroll på siden som skal vises i IFRAME'en
så du kan sette inn scriptet og BODY-taggen...

Se eksempel 2 her