Avatar billede wan31 Nybegynder
14. november 2005 - 00:41 Der er 22 kommentarer

Forskellige Browsere og Iframes tilpasning

Hej.
Jeg lagde et spørgsmål ind der af ukendte årsager gik død.
Så jeg prøver igen

<SCRIPT LANGUAGE = "JavaScript">
<!--
function iFrameHeight() {
if(document.getElementById('iframename').contentDocument.body.scrollHeight < "550") {
h = "550";
document.getElementById('iframename').style.height = h;
}
else if(document.getElementById && !(document.all)) {
h = document.getElementById('iframename').contentDocument.body.scrollHeight;
document.getElementById('iframename').style.height = h;
}
else {
h = document.frames('iframename').document.body.scrollHeight;
document.all.iframename.style.height = h;
}
}
//-->
</SCRIPT>

Dette script virker i Netscape og i Firefox.
Hvis jeg så i den øverste del, skifter
contentDocument.body.scrollHeight
Ud med
Document.body.scrollHeight

Så virker scriptet i Internet Explorer, men til gengæld ikke i de andre to browsere. Hvordan får jeg det hele til at virke i Alle tre browsere, og er det muligt at få Opera med i købet. For den browser reagere ikke på nogen af de to..????
Avatar billede wan31 Nybegynder
14. november 2005 - 01:31 #1
Man kunne forstille sig noget i stil med det her, men kan ikke rigtigt få det til at virke..


<SCRIPT LANGUAGE = "JavaScript">
<!--
function iFrameHeight() {
var oFrame = eval(oElement.id);
if(oFrame.contentDocument) {if(document.getElementById('iframename').contentDocument.body.scrollHeight < "550") {document.getElementById('iframename').style.height = "550";} Else {document.getElementById('iframename').style.height = document.getElementById('iframename').contentDocument.body.scrollHeight;} }
else {if(document.getElementById('iframename').Document.body.scrollHeight < "550") {document.getElementById('iframename').style.height = "550";} Else {document.getElementById('iframename').style.height = document.getElementById('iframename').contentDocument.body.scrollHeight;} }
}
//-->
</SCRIPT>
Avatar billede psykochicken Nybegynder
14. november 2005 - 01:35 #2
prøv at erstatte:
document.getElementById('iframename').contentDocument.body.scrollHeight
med
document.getElementById('iframename').scrollHeight;

/psc
Avatar billede wan31 Nybegynder
14. november 2005 - 01:45 #3
Så virker det slet ikke
Avatar billede olebole Juniormester
14. november 2005 - 19:35 #4
<ole>

Løsningen afhænger af, hvad der står _før_ dit <html>-tag. Hvad skriver du der?  :)

/mvh
</bole>
Avatar billede wan31 Nybegynder
14. november 2005 - 22:25 #5
Der skriver jeg en masse. Har en masse included filer til at ligge der, og Iframet er under body
Avatar billede wan31 Nybegynder
14. november 2005 - 22:31 #6
Når men før HTML Taget har jeg følgende includede filer....

En config fil med lidt renerelt Config fil inhold.
En fil med ADODB.Connection
En fil der tjekker lidt cookie og Sessions
En fil der laver lidt HTTP tjek
En fil der tjekker om siden er midlertidig lukket
Og en fil der hjælper .asa med at holde styr på listen over antal online
Avatar billede wan31 Nybegynder
14. november 2005 - 22:32 #7
Men ser ikke hvad det har med Document og contents.Ducument at gøre..???
Kan man ikke bare få JavaScript til at tjekke hvilken den skal bruge..??
Avatar billede wan31 Nybegynder
14. november 2005 - 22:35 #8
Skal jeg lægge alle includede filer mellem <html> og <head> istedet ..????
Avatar billede olebole Juniormester
15. november 2005 - 01:05 #9
Hvilken DTD bruger du? Bruger du ikke en fuld DTD _med_ definitions URL, understøtter IE ikke CSS-standarden - og så er løsningen én til IE og en anden til alle andre browsere ... ligesom CSS skal skrives på én måde til IE og en anden til alle andre.
Avatar billede wan31 Nybegynder
15. november 2005 - 01:29 #10
Tja, jeg bruger vist slet ikke nogen.

Hvad skal jeg bruge da.??? trict, Transitional eller..???
Avatar billede olebole Juniormester
15. november 2005 - 01:46 #11
Det kommer anpå, hvilken HTML-version, du skrive. Den kunne f.eks. se sådan ud:
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
Avatar billede wan31 Nybegynder
15. november 2005 - 01:56 #12
Nu skal jeg lige høre med det HTML versions halløj.
Alt html der virkede før, virker vel stadig med HTML 4.01.???? Det er vel kun det ny tilføjede der ikke virker sammen med det gamle går jeg ud fra
Avatar billede wan31 Nybegynder
15. november 2005 - 02:08 #13
Jeg ved sku ikke hvad jeg bruger af HTML på mine sider. Men jeg slutter ikke tags af med  /> hvis det er. Jeg slutter bare med >
Avatar billede olebole Juniormester
15. november 2005 - 02:11 #14
Jeg ved ikke, hvad 'det gamle' er - og heller ikke 'Alt html der virkede før'. Der er forskellige HTML-versioner - og mange ting fra HTML3.2 kan ikke anvendes i HTML4.01-Strict.
Jeg ved heller ikke, hvad du bruger af HTML ... meget mindre end du ved  :)
Avatar billede wan31 Nybegynder
15. november 2005 - 02:20 #15
Nej, men hvad skal jeg gøre efter jeg sætter det der ind på siden.
For content.Ducument virker stadig ikke ved Internet Explorer
Avatar billede psykochicken Nybegynder
15. november 2005 - 12:42 #16
Hvis du ex.vis bruger:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">,
vil det virke i Mozilla, Netscape og IE med noget i stil med:

function iFrameHeight(elm) {
var browser = navigator.userAgent;
var gecko = (browser.indexOf('Gecko')>-1)?true:false; //Mozilla og Netscape
var IE = (browser.indexOf('MSIE')>-1)?true:false; //Internet Explorer
//..og evt flere browsere....
var a = document.getElementById(elm);
var vb;
if(IE){ vb = a.document; }
else { vb = a.contentDocument; }

og så:
   
if(vb.body.scrollHeight < "550") {
    h = "550";
    a.style.height = h;
}
.....osv....

<body onload="iFrameHeight('iframename')">

Hvilken html-version og kode, der hører bedst sammen må du spørge olebole om. Men det dig, der skal vælge hvilken version du vil bruge...

/psc
Avatar billede wan31 Nybegynder
15. november 2005 - 17:22 #17
Tja som jeg har læst rundt, så tror jeg bare jeg smider XHTML ind.
Det er ikke den store forskel der er på HTML og XHTML alligevel på nær lidt mere perfektsionisme eller hvordan det staves, og så nogle extra / endelse i f.eks BR, Indput osv... Og ifølge det jeg har læst kan det vist godt betale sig at lave de få rettelser i sine normale HTML/ASP Filer...

Men jeg fik det der til at virke, så takker for hjælpen.
Men lige en ting. Så vidt jeg har tjekket, så virker den kode der fint uden en DOCTYPE, så hvad er det egentlig man bruger den til..??? Ældre browser versioner..???
Avatar billede olebole Juniormester
15. november 2005 - 21:57 #18
Det er noget frygteligt vrøvl - men det er ikke din skyld. Jeg mangler endnu at se en XHTML-tutorial, der er skrevet af en person, der nogensinde selv har skrevet et fungerende XHTML-dokument. De, jeg har set, er alle skrevet af folk, der ikke aner en kæft om, hvad XHTML er - og hvordan det virker  :)
90% af alle XHTML-sider på WWW parses som dårlig, tilfældig HTML-tagsoup ... absolut ikke som XHTML.

Idag er der ingen fordele ved XHTML - tværtimod. IE6 understøtter således ikke teknologien - og IE 7 kommer heller ikke til det. Prøv evt. at læse disse to:
    http://www.eksperten.dk/artikler/537
    http://www.eksperten.dk/artikler/538

DTD'en er en absolut nødvendighed for, der overhovedet er tale om et HTML-dokument. Uden den har browseren ingen anelse om, hvordan koden skal tolkes og det er ikke muligt at stole på, hvordan den renderes.

Desuden er det _meget_ vigtigt, at DTD'en indeholder definitions URL'en. Ellers disables store og vigtige dele af CSS-standarden i IE
Avatar billede wan31 Nybegynder
16. november 2005 - 00:35 #19
Ok det kan jeg da godt se....

Så lige to ting inden afslutning....

Hvornår kommer XHTML 2.0, og hvor kan jeg få bedre infomation om hvordan man RIGTIGT skal bruge det, med koder osv...  Får som sagt, så det jeg har læst forskellige steder på nettet, som åbenbart ikke passer, så er det stort set kun de slut tags osv... der er forskel på HTML og XHTML .... Jeg så da helst at lave det rigtigt når dagen kommer
Avatar billede olebole Juniormester
16. november 2005 - 00:47 #20
Jeg kender ikke til steder med kodeeksempler, hvor du kan lære at bruge nogen XHTML-version korrekt - og slet ikke version 2.0  :o|

Det bedste, du kan gøre, er at læse om XHTML på W3C. I det hele taget kan det være svært at finde troværdige informationer om webkodning på WWW. Nogle af danskernes foretrukne - html.dk og w3schools.com - er fyldt med alvorlige fejl, mangler og udeladelser.
At publicere noget på WWW kræver stort set intet. Det er både nettets styrke - men samtidig en skrækindjagende fare  :)
Avatar billede olebole Juniormester
16. november 2005 - 00:50 #21
- og så glemte jeg at svare på det første spørgsmål. Hvornår XHTML2.0 præcist er færdig, ved jeg faktisk ikke - men det er jo også først rigtig interessant, når browserne understøtter det. Forløbig ser sproget ikke ud til at blive anvendeligt før IE8 er indarbejdet ... desværre  :o|
Avatar billede dk_zero-cool Nybegynder
16. november 2005 - 01:22 #22
Ja det er to browser versioner højere, det kan tage sin tid med den tid MS tager om bare at udgive en .... Men er det ikke det DOCTYPE skulle sørge for.
Tror det er det eneste jeg aldrig har lært at fatte ved hjemmesider. Det er de tags man sætter før <HTML> DOCTYPE osv... Jeg fatter META, men det er vist også den eneste.

Når men mangler lidt svar fra jer to.
I skal da have noget for tiden, og hjælpsomheden.
Tror faktisk jeg lærte en del mere end jeg bad om :D  ... Takker
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