Iframe opbouwen mbv JavaScript
vandaag probeerde ik een iframe inclusief de locatie waar hij heen moest op te laten bouwen door JavaScript.
helaas lukte me dit niet.
Het iframe werd steelds links bovenin de pagina gebouwd terwijl hij in een div moet blijven.
de pagina die door javascript ingeladen moet worden is: ucp/ads.ucp
het iframe mag 200 x 200 zijn.
wie kan mij een eindje op weg helpen?
Wat heb je al?
Post eventjes een stuk code van wet je al hebt. Dan kunnen we helpen met toevoegen/ verbeteren van je scriptje.
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<script language="JavaScript" type="text/javascript">
function makeFrame() {
ifrm = document.createElement("IFRAME");
ifrm.setAttribute("src", "http://chaterz.nl/ucp/ads.ucp");
ifrm.style.width = 200+"px";
ifrm.style.height = 200+"px";
document.body.appendChild(ifrm);
}
makeFrame();
</script>
function makeFrame() {
ifrm = document.createElement("IFRAME");
ifrm.setAttribute("src", "http://chaterz.nl/ucp/ads.ucp");
ifrm.style.width = 200+"px";
ifrm.style.height = 200+"px";
document.body.appendChild(ifrm);
}
makeFrame();
</script>
zie hier wat hij doet:
http://chaterz.nl/test.uspx
hij zou nu waar ik het post direct onder de blauwe balk moeteen komen
Gewijzigd op 23/01/2012 17:10:31 door Christian Snijders
document.body.appendChild(ifrm);
Dit voegt html toe aan de body. Jij wil het toevoegen aan "content"; je moet dat dan ook duidelijk maken.
Probeer eens met:
document.getElementById("content").appendChild(ifrm);
Toevoeging op 23/01/2012 17:25:10:
ik heb em nu zo:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<script type="text/javascript">
function BuildAdvertisement(age,width,height) {
ifrm = document.createElement("IFRAME");
ifrm.setAttribute("src", "http://chaterz.nl/ucp/ads.ucp?a=age");
ifrm.style.width = 200+"px";
ifrm.style.height = 200+"px";
ifrm.style.border = 0+"px";
document.getElementById("content").appendChild(ifrm);
}
BuildAdvertisement(16,200,200);
</script>
function BuildAdvertisement(age,width,height) {
ifrm = document.createElement("IFRAME");
ifrm.setAttribute("src", "http://chaterz.nl/ucp/ads.ucp?a=age");
ifrm.style.width = 200+"px";
ifrm.style.height = 200+"px";
ifrm.style.border = 0+"px";
document.getElementById("content").appendChild(ifrm);
}
BuildAdvertisement(16,200,200);
</script>
BuildAdvertisement(16,200,200); 16 is dus de age, die moet in het script op de plaats age staan
heeft te maken omdat ik het in een .js file wil gooien
Gewijzigd op 23/01/2012 17:35:35 door Christian Snijders
Het woord 'age' deleten en '16' typen?
Christian Snijders op 23/01/2012 17:34:07:
... omdat ik het in een .js file wil gooien
Wel ja, daar gaat het om.
javascript functies kan je bijna altijd in een aparte .js zetten.
Maar als je variabelen een waarde wil geven die kan variëren, moet je op 1 of andere manier connectie hebben tussen php en javascript.
Dan is de simpelste manier om javascript te laten genereren door php, binnen een <script></script> element (simpelste; niet per se de beste).
Je kan beide ook combineren: functies laten staan in aparte files, maar met php toch zoiets doen:
Toon eens hoe je in php aan die age komt. Zit dat in een GET?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<script type="text/javascript">
function BuildAdvertisement(age,width,height,lang) {
ifrm = document.createElement("IFRAME");
var ads="http://chaterz.nl/ucp/ads.ucp?a="+age+"&lang="+lang;
ifrm.setAttribute("src", ads);
ifrm.style.width = width+"px";
ifrm.style.height = height+"px";
ifrm.style.border = 0+"px";
document.getElementById("content").appendChild(ifrm);
}
BuildAdvertisement(16,200,200,'nl');
</script>
function BuildAdvertisement(age,width,height,lang) {
ifrm = document.createElement("IFRAME");
var ads="http://chaterz.nl/ucp/ads.ucp?a="+age+"&lang="+lang;
ifrm.setAttribute("src", ads);
ifrm.style.width = width+"px";
ifrm.style.height = height+"px";
ifrm.style.border = 0+"px";
document.getElementById("content").appendChild(ifrm);
}
BuildAdvertisement(16,200,200,'nl');
</script>