Scriptvensters tijdelijk toestaan

Status
Niet open voor verdere reacties.

roxan30

Nieuwe gebruiker
Lid geworden
29 dec 2011
Berichten
1
Is het normaal dat een javascript soms niet goed werkt in IE? Ik heb bij bepaalde scripts op verschillende computers hetzelfde probleem: als het javascript inlaadt (waarbij ik "prompt" gebruik, dus de bedoeling is dat er een pop-up wordt geopend waarin de bezoeker iets kan intypen), dan blijft ie vragen of ik "scriptvensters tijdelijk wil toestaan". Ik klik hier dan op voor akkoord, vervolgens laadt de pagina opnieuw en wordt opnieuw dezelfde vraag gesteld (of scriptvensters tijdelijk zijn toegestaan).

In Firefox werkt het wel.

Moet ik dergelijke javascript gewoon vermijden, of heb ik iets verkeerd gedaan?

Dit is het javascript:

HTML:
<html>
<head>
</head>
<body>
<h2>Geef twee getallen. Het script telt ze bij elkaar op.</h2>
<script type="text/javascript">
<!--
function optellen(a, b)
{
var resultaat = parseInt(a) + parseInt(b); /* standaardfunctie van JavaScript om de argumenten om te zetten naar een getal. Als je parseInt weglaat is het resultaat 105 in plaats van 15. Probeer het uit! */
return resultaat;
}
 
var getal1 = prompt("typ het eerste getal");
var getal2 = prompt("typ het tweede getal");
var uitkomst = optellen(getal1, getal2);
document.write(getal1 + " plus " + getal2 + " = " + uitkomst);
-->
</script>
</body>
</html>
 
Je doet niets verkeerd, wellicht een alternatief voor prompt gebruiken. Om het een beetje leuk te maken, gebruik Fancybox met in het iframe daarvan de pagina met een form met daarin een input text en submit. Zorg dat de gegevens naar de parent gestuurd worden (target="_parent") middels get (method="get") en lees de waardes uit de url.

Succes!
 
[...] met in het iframe daarvan[...]

iFrames lijken me eerder een verslechtering t.o.v. prompts ;) Wel moet er wat gebeuren met het document.write; een element invullen met een .innerHTML is wat netter. Hier is een (getest en werkend) voorbeeld:

HTML:
<!doctype html>

<html>

   <head>

      <meta charset='utf-8' />

      <title>Javascript optellen test!</title>

   </head>

   <body>

      <pre id='antwoord'></pre>

      <script>

         var handle = document.getElementById('antwoord');   // verkrijg referentie naar de <pre>

         var getal1, getal2, uitkomst;


         function optellen(a, b)
         {
            var antwoord = parseInt(a) + parseInt(b);

            return antwoord;
         }


         getal1 = prompt('type het 1e getal in');
         getal2 = prompt('type het 2e getal in');

         uitkomst = optellen(getal1, getal2);

         handle.innerHTML = 'de som van ' + getal1 + ' en ' + getal2 + ' is ' + uitkomst;

      </script>

   </body>

</html>





Anyway, als je lokaal een script probeert in IE heeft 'ie af en toe de neiging om te gaan klagen. Als het goed is zal dit niet voorkomen als het online staat. Maar hey, het is sowieso een beter idee om scripten te leren/oefenen in een andere browser (dus Firefox / Chrom(e|ium) / Safari / Opera)
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan