Avatar billede loopstudio Nybegynder
19. september 2003 - 23:29 Der er 17 kommentarer og
1 løsning

Fjerne scrollbars i en iframe?

Hej..

Jeg ville gerne høre om det er muligt ON THE FLY at fjerne eller sætte scrollbars i en parent iframe?

På forhånd tak! ;o)
Avatar billede loopstudio Nybegynder
19. september 2003 - 23:33 #1
Jeg har prøvet sådan lidt forskelligt..:

<BUTTON onClick='testIframe.style.scrolling=no'>
<BUTTON onClick='testIframe.scrolling=no'>
<BUTTON onClick="testIframe.style.scrolling='no'">
<BUTTON onClick="testIframe.scrolling='no'">
<BUTTON onClick="parent.testIframe.style.scrolling='no'">
<BUTTON onClick="parent.testIframe.scrolling='no'">
<BUTTON onClick="parent.testIframe.scrollbars.visibility='no'">
<BUTTON onClick="parent.testIframe.scrollbars.visibility='false'">

men jeg ved ikke om det er en syntaksfejl eller det bare ikke kan lade sig gøre?

Der står noget i min HTML-bog: "Signed scripts with the UniversalBrowserWrite privilege can use the window.scrollbars.visibility property to show or hide the scrollbars."
Avatar billede bearhugx Nybegynder
19. september 2003 - 23:37 #2
du skal bruge

onclick="testIFrame.style.overflow='hidden'

for at fjerne den

og
onclick="testIFrame.style.overflow='auto'

for at sætte den på igen :-)

/Søren Munk Skrøder
Avatar billede bearhugx Nybegynder
19. september 2003 - 23:41 #3
har lagt et test-eksempel op på
http://exp.skroeder.dk/403519/parent.html
:-)
Avatar billede loopstudio Nybegynder
19. september 2003 - 23:51 #4
ok, det vil jeg lige prøve!
Jeg kan dog ikke trykke på dine knapper i dit eksempel!??
Avatar billede bearhugx Nybegynder
19. september 2003 - 23:54 #5
hmm ... lige to sek.. prøver lige at få den til at virke i Internet Exploder ... (PS: det virker fint på Mozilla :-/)
Avatar billede loopstudio Nybegynder
20. september 2003 - 00:21 #6
hmm.. jeg kan ikke få det til at virke i min egen kode.. Der sker ikke noget når jeg klikker på mine egne knapper

Men jeg har knapperne INDE i min iframe! (hvilket også var det jeg skal bruge *s*)
Avatar billede bearhugx Nybegynder
20. september 2003 - 00:43 #7
what .. du skulle ikke bruge det fra parent-framen ????

jeg har en løsning parat - virker i IE og mozilla - , men den kræver at iframen ved, med hvilken ID den har i parent-framen --- Det er et hack, som jeg vil forsøge at løse senere...

//// FØLGENDE kode forudsætter at parent-framen henviser til iframen med id'en "ifrm" - altså <iframe id="ifrm" ... >

    <script>
        function visScroll() {
            if( document.all) {
                document.body.style.overflow="auto";
            } else {
                parent.document.getElementById("ifrm").style.overflow="auto";
            }
        }
        function fjernScroll() {
            if( document.all) {
                document.body.style.overflow="hidden";
            } else {
                parent.document.getElementById("ifrm").style.overflow="hidden";
            }
        }
    </script>
    <body>
        <button onclick="fjernScroll();"> NOSHOW </button> <button onclick="visScroll();"> SHOW </button>
Avatar billede bearhugx Nybegynder
20. september 2003 - 00:43 #8
koden kan som sagt ses på
http://exp.skroeder.dk/403519/parent.html
Avatar billede loopstudio Nybegynder
20. september 2003 - 14:11 #9
Hej bearhugx,
nå du må undskylde hvis jeg ikke forklarede mig godt nok ;o)
DIT eksempel virker i hvertfald nu! *s* såå nu vil jeg lige prøve at implementere det i min kode..

Det underlige er at det egentligt kom sig af at jeg havde sat IFRAMEn til at have SCROLLING=AUTO og den havde jeg sat til en fast størrelse, 320x240 pixels og i programmet inde i Iframen havde jeg så et billede på også 320x240 og også sat margener til 0, men alligevel viser den scrollbarerne, har du nogle ideer til hvordan det kan være? Kan indholdet ikke have nøjagtigt samme størrelse som iframen?
Avatar billede roenving Novice
21. september 2003 - 10:53 #10
Prøv lige det simple: at gøre iframen et par pixel (4 !-) større ...
Avatar billede loopstudio Nybegynder
21. september 2003 - 11:42 #11
roenving: Ja, det var også min tanke lige at prøve det først, hvilket jeg også har gjort *s* Så kunne jeg sagtens få fjernet rullepanelerne! Men jeg ville jo helst have en løsning hvor jeg kan få kant til kant (uden mellemrum) og at den selv AUTOmatisk finder ud af om de skal på. Man skulle da forvente at det er det "AUTO" er til for.. ;o)

Tror du ikke det kan lade sig gøre? ELler tror du jeg blot (stadig) måske har nogle margener e.lign. et eller andet sted der har indvirkning på det?

På forhånd tak.. ;o)
Avatar billede roenving Novice
21. september 2003 - 11:47 #12
Måske

<img ...  style="top:0px;left:0px;border:0px;">

-- det er ihvertfald det jeg bruger på http://roenving.users.whitehat.dk/WD1ResizeTilBillede.html
Avatar billede loopstudio Nybegynder
21. september 2003 - 11:59 #13
bearhugx: Jeg har nu prøvet at implementere din kode og det virker! ;o) MEN jeg har opdaget en lille finurlighed, som gør at jeg (måske) ikke kan bruge løsningen alligevel. Det er at jeg har min iframe hvor jeg skifter indhold inde i. Program A SKAL have rullepaneler, mens program B IKKE må have rullepaneler! Det jeg så gjorde det var at i program A som jo har rullepaneler, dér har jeg sat din knap til at fjerne rullepanelerne og vise program B, men når program B vises, så er rullepanelerne tilbage igen!

Det får mig til at tro at den måde vi sætter det på nu "kun" virker lokalt for det program man nu engang har inde i iframen, men det virker altså ikke permanent på iframen, altså som om det ikke er selve iframes attributter der sættes!
Er der monstro en workaround til dette? Tror du der er en måde at sætte det (stadig on the fly) på selve iframen, så man ikek skal sætte det invididuelt i alle programmerne man viser inde i iframen!?

Py ha.. håber ikke min udredning var alt for lang ;o)
Avatar billede loopstudio Nybegynder
21. september 2003 - 12:01 #14
roenving: ups: *s* Jeg ved ikke om det har nogen betydning, men for enkelhedens skyld skrev jeg at det var et billede, men det er i virkeligheden en java-applet, som jeg har sat til 320x240!
Har det nogen betydning? Og kan jeg bruge dine styles direkte på en javaapplet?
Avatar billede roenving Novice
21. september 2003 - 12:05 #15
Det burde man kunne, såvidt jeg ved !-)

css er i princippet til rådighed for alle typer tags, men de har dog ikke præcis samme virkning, og applets har jeg ikke selv haft fat i ...
Avatar billede loopstudio Nybegynder
21. september 2003 - 12:19 #16
TIL INFO:

Mit iframe-tag ser således ud:

<IFRAME NAME='testiframe' ID='testiframeid' ALIGN='center' FRAMEBORDER='0' WIDTH='320' HEIGHT='240' SCROLLING='auto' MARGINHEIGHT='0' MARGINWIDTH='0' VSPACE=0 HSPACE=0 SRC='http://domaene.dk/side.asp'>


Inde i mit program (skal skal være inde i iframen) har jeg følgende kode:

<style type="text/css">
BODY {
margin-left: 0 px;
margin-right: 0 px;
margin-top: 0 px;
margin-bottom: 0 px;
}
</style>

samt:

<table width=100% height=100% cellSpacing=0 cellPadding=0 bgColor=#000000 border=0>
<tr>
<td align=center valign=center>
<applet archive="xxxx.jar" code="yyyy.class" width="320" height="240">

For mig at se har jeg gjort hvad jeg kan for at sætte størrelser samt fjerne eventuelle margener rundt omkring, men måske er der noget jeg har gjort galt og/eller glemt?
Avatar billede loopstudio Nybegynder
22. september 2003 - 12:41 #17
Hej, nu har jeg lavet lidt mere research!

Det viser sig at det er TD-elementet, som af en eller anden årsag viser nogle ekstra pixellinjer forneden!

Jeg kan se det fordi at det kun er kanten forneden der bliver blå:

<td align=center valign=center STYLE='PADDING:0px' bgColor=#0000FF>
    <applet archive="xxxxx.jar" code="yyyyy.class" width="320" height="240" STYLE='PADDING:0px; margin: 0px'>

Jeg har prøvet at sætte MARGIN-properties inde i TD-elementet, men de har ingen effekt i TD-elementet overhovedet! Derimod kan jeg se at PADDING-propertien ændrer noget og gør det blå område større, hvis jeg sætter padding op!

Nogle ideer til hvordan jeg får den nederste blå kant væk? Det er formodentlig den der forårsager scrollbarerne!

TIA ;o)
Avatar billede loopstudio Nybegynder
22. september 2003 - 15:23 #18
Nå, det viste sig at være pga. et utilsigtet linjeskift fordi at der er en fejl i IE som gør at man altid ikke må have sit slut </TD> tag på en linje for sig, men man skal skrive det i slutningen af sidste kodelinje, SÅ virker det!!

Mærkeligt! But thats how it is!
Se ellers: http://exp.dk/spm/404153.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

Seneste spørgsmål Seneste aktivitet
I går 21:00 Libre Office Impress Af Frank i Andre styresystemer
I går 11:47 VB script Af Jenshentze i Word
I går 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel