Avatar billede kennedk Nybegynder
05. december 2007 - 09:22 Der er 3 kommentarer

køre kode fra side, i Iframe

hej Eksperter.

jeg har lavet dette script, som går ind og deaktivere alle scripts og inputs,

<script>
        var clickPlusTal = 0;function clickPlus(){if(clickPlusTal >= 2){alert("Alle links er deaktiveret i preview!!");}else{clickPlusTal++;}}
        for(var i = 0; i < document.getElementsByTagName("A").length; i++){document.getElementsByTagName("A")[i].setAttribute("onclick", "clickPlus();return false;")}
        for(var i = 0; i < document.getElementsByTagName("INPUT").length; i++){document.getElementsByTagName("INPUT")[i].setAttribute("onclick", "clickPlus();return false;")}
    </script>

og på min side har jeg en iframe, men hvordan kan man køre koden på siden i min Iframe , uden at skrive det ind på selve siden i Iframen, men det skal køres fra siden med iframen i?
Avatar billede roenving Novice
07. december 2007 - 01:37 #1
Det kan du ikke umiddelbart, men hvis indholdet i iframen kommer fra din egen server, kan du dog adressere window-elementet i iframen:

window.frames["dinIframe"].document. ...
Avatar billede kennedk Nybegynder
07. december 2007 - 09:12 #2
Nu har jeg denne kode, men det lader ikke til at virke.

<html>
    <body>
        <iframe src="iframe.html" name="iframe"></iframe>
      <script type="text/javascript">
        var clickPlusTal = 0;function clickPlus(){if(clickPlusTal >= 2){alert("Alle links er deaktiveret i preview!!");}else{clickPlusTal++;}}
        for(var i = 0; i < window.frames["iframe"].document.getElementsByTagName("A").length; i++){window.frames["iframe"].document.getElementsByTagName("A")[i].setAttribute("onclick", "clickPlus();return false;")}
        for(var i = 0; i < window.frames["iframe"].document.getElementsByTagName("INPUT").length; i++){window.frames["iframe"].document.getElementsByTagName("INPUT")[i].setAttribute("onclick", "clickPlus();return false;")}
    </script>
    </body>
</html>

Må se om jeg kan finde en anden løsning :)
Avatar billede olebole Juniormester
10. december 2007 - 13:45 #3
<ole>

En event-handler er ikke en attribut, så du kan ikke sætte event-handler med setAttribute. Du skal bruge addEventListener eller attachEvent - alt efter, hvilken browser du anvender.

Desuden er det - som roenving anfører - absolut nødvendigt, de to dokumenter ligger under samme domæne

/mvh
</bole>
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