Avatar billede dennism Nybegynder
06. november 2006 - 20:56 Der er 8 kommentarer og
1 løsning

JavaScript: iframe.location

Jeg har denne lille simple kode:

<iframe name="controlbasket" src="controlbasket.php" frameborder="0" style="width:300px; height:300px;"></iframe>
<input type="button" class="button" value="Test" onclick="alert(document.controlbasket.location);">

Men hvorfor vil firefox ikke fortælle mig location på iframen når jeg trykker på knappen?

Beklager, men har ingen point.
Avatar billede dennism Nybegynder
06. november 2006 - 21:30 #1
Ingen der kan hjælpe her? :(
Avatar billede jokkejensen Novice
06. november 2006 - 23:22 #2
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Thues site</title>
<link rel="stylesheet" type="text/css" href="default.css" media="screen,projection" title="Default" />
<script type="text/javascript">
function getFrameSrc()
{
window.alert(document.getElementById("controlbasket").src);
}

function initialize()
{
    document.getElementById("btn_getIframeSrc").onclick = getFrameSrc;   
}

</script>
</head>
<body onload="initialize();">
<iframe id="controlbasket" src="http://www.google.com" frameborder="0" style="width:300px; height:300px;"></iframe>
<input type="button" class="button" value="Test" id="btn_getIframeSrc">
</body>

</html>


Her.. sig til hvís noget skal beskrives.. men det skulle da være til at forstå..

/JJ
Avatar billede dennism Nybegynder
07. november 2006 - 07:10 #3
Heh..jeg vil meget gerne vide, hvorfor det jeg gøre i min kode ikke er gyldigt? Jeg har sat en onclick, som gerne skulle give mig den lokation?
Avatar billede dennism Nybegynder
07. november 2006 - 10:21 #4
Det må kunne laves simplere i stil med min kode, hvor jeg har en alert i en onclick-metode?
Avatar billede dennism Nybegynder
07. november 2006 - 10:24 #5
Jeg har nu ændret til denne kode, men det virker heller ikke helt:

<iframe id="controlbasket" src="http://www.google.com" frameborder="0" style="width:600px; height:500px;"></iframe>
<br>
<input type="button" class="button" value="Test" onclick="alert(document.getElementById("controlbasket").src);">
Avatar billede jokkejensen Novice
07. november 2006 - 12:35 #6
jeg ved ikke helt hvilken editor du benytter... men tag at brug en med noget color highligt når man ikke har fat i syntaxen for html..

det er ex ikke gyldigt at skrive " tegnet inde i en attribut som du forsøger til sidst..

og jeg tror ikke document.ID_PÅ_EN_CONTROL som du forsøger først vil ramme noget som helst...

Endvidere er det "best practice" at forsøge at undgå at have noget javascript blandet sammen med sin markup - så er det 1000 gange lettere at fjerne og tilføje script, det hele bliver meget mere skalerbart, når man adskiller de forskellige redskaber - og ikke bare blander dem sammen.

Mvh
Jacob
Avatar billede dennism Nybegynder
07. november 2006 - 15:12 #7
Well,

konklussionen er, at dette virker:
<iframe id="controlbasket" src="http://www.google.com" frameborder="0" style="width:600px; height:500px;"></iframe>
<br>
<input type="button" class="button" value="Test" onclick="alert(document.getElementById('controlbasket').src);">

Men er det dårlig kode?
Avatar billede dennism Nybegynder
26. november 2006 - 18:17 #8
Smider du lige et svar?
Avatar billede dennism Nybegynder
29. november 2006 - 10:05 #9
.lukker
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