[AJAX] laden gaat fout in IE7

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Michel de Groot

Michel de Groot

13/09/2008 12:45:00
Quote Anchor link
Hallo allemaal,

Ik ben net begonnen met het uitproberen om een ajax pagina in te laden op een website.

Ik heb wat codes gezocht en een beetje aangepast. In Firefox werkt de code zoals hij moet werken en dar ben ik erg blij mee. Alleen in, het altijd vage, Internet Explorer werkt het weereens niet.

Zouden jullie mij misschien kunnen wijzen op de fout die ik maak?

Volgens ie zit de fout op deze plek:

Regel: 65
teken: 3
foutmelding: Object vereist

Dit is mijn hele html:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<!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=utf-8" />
<title>Ajax opzet</title>
<link rel="stylesheet" type="text/css" href="Include/style.css" />
<script type="text/javascript" src="Include/ajax.js"></script>
<script type="text/javascript" src="Include/hashlistener.js"></script>
</head>

<!--<body onload="herladen('0', 'rechts');">-->
<body>
<div id="container">
    <div id="header">
        <script type="text/javascript">
            document.write("<p>Loaded at: " + new Date + "<br>Hash: " + document.location.hash + "<\/p>");
        </script>
        <pre>onHashChange: <span id="out"></span></pre>
        <script type="text/javascript">
            function setHash(naam) {
                hashListener.setHash(naam);
            }
        </script>
        <a href="#anchor">anchor</a>
    </div>
    <div id="links">
        <a href="javascript:ajaxpage('home.html','content_1');">Home in "Content box 1"</a><br />
        <a href="javascript:ajaxpage('andere_pagina.php','content_2');">Andere pagina in "Content box 2"</a><br /><br />
        <a href="javascript:ajaxpage('home.html','content_2');">Home in "Content box 2"</a><br />
        <a href="javascript:ajaxpage('andere_pagina.php','content_1');">Andere pagina in "Content box 1"</a>
    </div>
    <div id="rechts">
        <div id="content_1"><center><h5>Content box 1</h5></center></div>
        <div id="content_2"><center><h5>Content box 2</h5></center></div>
    </div>
    <div class="clear">&nbsp;</div>
    <div id="footer"><center><h5>Footer</h5></center></div>
</div>
</body>
</html>

Het vreemde vind ik dat deze code nieteens tot regel 65 gaat. Wie kan mij helpen?
Gewijzigd op 01/01/1970 01:00:00 door Michel de Groot
 
PHP hulp

PHP hulp

18/05/2024 02:44:46
 
Terence Hersbach

Terence Hersbach

13/09/2008 12:48:00
Quote Anchor link
<script type="text/javascript" src="Include/ajax.js"></script>

deze regels in het bestand moet je erbij optellen.

IE maakt er 1 lang bestand van, en je zult in je gewone html moeten binnen met tellen en dan doortellen in het js-bestand

edit: ik raad je aan een framework te gebruiken, bijv MooTools omdat die crossbrowser is en verder kijkt dan alleen firefox en internet explorer
Gewijzigd op 01/01/1970 01:00:00 door Terence Hersbach
 
- SanThe -

- SanThe -

13/09/2008 12:56:00
Quote Anchor link
Pas je script even aan en gebruik en tags om je code heen. Om php code zet je uiteraard dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php en ?>
Gebruik je Afbeelding knop om dit te doen.

SanThe.
 
Michel de Groot

Michel de Groot

13/09/2008 12:57:00
Quote Anchor link
Oke bedankt alvast.

Ik heb nu de code van de javascripts include gewoon in de pagina geplakt en nog een keer de pagina gestart in IE.

IE geeft nu aan dat de fout zit in regel 133 teken 3 en dat is nu op de pagina dit stukje:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
writeFrame: function (s) {
 var f = document.getElementById("state-frame");
 var d = f.contentDocument || f.contentWindow.document;
 d.open();
 d.write("<script>window._hash = '" + s + "'; window.onload = parent.hashListener.syncHash;<\/script>");
 d.close();
},

De exacte regel 133 is die begint met var d = f.contentDocument
Gewijzigd op 01/01/1970 01:00:00 door Michel de Groot
 
Jelmer -

Jelmer -

13/09/2008 14:53:00
Quote Anchor link
Is f niet 'null'? En zo nee, als f.contentDocument niet bestaat, bestaat f.contentWindow dan wel? Want je krijgt wss de foutmelding omdat je een property van een ding dat niet een object is wilt opvragen. Dus of f, waarvan je contentDocument wilt hebben bestaat niet, of f.contentWindow, waarvan je document wilt hebben bestaat niet.
 
N0xie

n0xie

13/09/2008 15:41:00
Quote Anchor link
Zoals al eerder gezegd: waarom het wiel opnieuw uitvinden? Gebruik een js framework die al dit werk voor je doet. Kijk bijvoorbeeld eens naar jQuery De functie .load() doet alles wat jij wil in 1 call.
 
Patrick

Patrick

14/06/2009 11:59:00
Quote Anchor link
n0xie schreef op 13.09.2008 15:41:
Zoals al eerder gezegd: waarom het wiel opnieuw uitvinden? Gebruik een js framework die al dit werk voor je doet. Kijk bijvoorbeeld eens naar jQuery De functie .load() doet alles wat jij wil in 1 call.


hehe daar heb ik nu niet zoveel aan :-D
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.