[JS]IE laadt pagina niet bij div

Pagina: 1
Acties:

  • pderaaij
  • Registratie: Oktober 2005
  • Laatst online: 18-08-2025
Het is een beetje een vage titel, maar ik vind het ook maar een vaag probleem :)

Als je naar de website http://develop.axysservice.nl/vemotech gaat in FireFox zie je dat het perfect werkt en geen problemen zijn. Bekijk je de website in IE laadt hij de website een stukje, geeft dan een messagebox weer "Kan de pagina niet weergeven" en gelijk daarna een 404 pagina.

Afbeeldingslocatie: http://img355.imageshack.us/img355/6730/buro1mf.jpg

Nu heb ik al van alles wat geprobeerd, maar ik kan die fout niet vinden. Weet iemand hier wat het probleem is?

Bij voorbaat dank.

Hier de index.html

code:
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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>.: Vemotech Tegels :.</title>
<link href="style.css" rel="stylesheet" type="text/css"/>
<link href="alt.drivers/alt.hovermenu.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="alt.drivers/alt.ajax.engine.js"></script>
<script src="alt.drivers/alt.hovermenu.js" type="text/javascript"></script>
</head>
<body>
<div class='header'>[img]'images/index_01.jpg'[/img]</div>
<div class='contentLeft'>[img]'images/index_02.jpg'[/img]</div>
<div class='menuHome'><a href='#' onclick="ajax_run('test.php?sRegion=start');">[img]'images/home.jpg'[/img]</a></div>
<div class='menuVemo'><a href='#' onmouseover="dropdownmenu(this, event, menuVemo, '110px')" onmouseout="delayhidemenu()">[img]'images/vemotech.jpg'[/img]</a></div>
<div class='menuCollectie'><a href='#' onmouseover="dropdownmenu(this, event, menuCollectie, '110px')" onmouseout="delayhidemenu()">[img]'images/collectie.jpg'[/img]</a></div>
<div class='menuVloer'><a href='#' onclick="ajax_run('test.php?sRegion=vloerverwarming');">[img]'images/vloerverwarming.jpg'[/img]</a></div>
<div class='menuWerk'><a href='#' onmouseover="dropdownmenu(this, event, menuWerk, '110px')" onmouseout="delayhidemenu()">[img]"images/werkwijze.jpg"[/img]</a></div>
<div class='menuContact'><a href='#' onmouseover="dropdownmenu(this, event, menuContact, '110px')" onmouseout="delayhidemenu()">[img]'images/contact.jpg'[/img]</a></div>
<div class='menuRest'>[img]'images/index_09.jpg'[/img]</div>
<div id="contentContainer" class='content'><script type="text/javascript">ajax_run('test.php?sRegion=start');</script></div>
<!-- Hier loopt hij vast -->
<div id="fotoContainer" class='fotoCell'></div>
<div class='contentRight'>[img]'images/index_11.jpg'[/img]</div>
<div class='footer'>[img]'images/index_12.jpg'[/img]</div>
</body>
</html>


ajax.engine.js

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// Get the bas URL
url = document.location.href;
xend = url.lastIndexOf("/") + 1;
var base_url = url.substring(0,xend);
var foto;

function ajax_run(url)
{
    // Does URL start with http?
    if(url.substring(0,4) != 'http')
    { 
        url = base_url + url;
    }
    
    // create new JS element
    var jsel = document.createElement('SCRIPT');
    jsel.type = 'text/javascript';
    jsel.src = url;
    
    // append JS element
    document.body.appendChild(jsel);
}


test.php
code:
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
<?php
require_once("alt.drivers/alt.content.class.php");

$oContent = new CContent();

$oContent->getContent($_GET['sRegion']);

function html2js($data)
{
  return addcslashes($data, "\0\n\r\t\\'/");
}

$sFotoRow  = "<table width='180'>"; 
$sFotoRow .= "<tr><td>";
$sFotoRow .= "[img]'images/sidebar/".$oContent->sFoto1."'[/img]</img>";
$sFotoRow .= "</td></tr>";
$sFotoRow .= "<tr><td>";
$sFotoRow .= "[img]'images/sidebar/".$oContent->sFoto2."'[/img]</img>";
$sFotoRow .= "</td></tr>";
$sFotoRow .= "<tr><td>";
$sFotoRow .= "[img]'images/sidebar/".$oContent->sFoto3."'[/img]</img>";
$sFotoRow .= "</td></tr>";
$sFotoRow .= "</table>";
?>
div = document.getElementById('contentContainer');
div.innerHTML = "<?php echo "<p class='articleHead'>"; echo $oContent->sTitle; echo "</p><p width='500'>"; echo html2js(nl2br($oContent->sBericht)); echo "</p>"; ?>";

foto = document.getElementById("fotoContainer");
foto.innerHTML = "<?php echo html2js($sFotoRow); ?>";

  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

Dit heeft weinig met ajax te maken aangezien je niet eens gebruik maakt van XMLHttpRequest.
Verder denk ik dat het een timing-issue is; wellicht moet je ajax_run pas aanroepen op het moment dat de beide containers die gevuld moeten worden gedefinieerd zijn in je source, of misschien zelfs pas als de hele pagina zelf geparsed is (hoewel het dan zou kunnen dat de dynamische javascript niet meer geparsed wordt).

Verder mis ik een content-type header in je test.php; de juiste mimetype voor javascript is application/x-javascript

Persoonlijk zou ik toch voor een echte ajax-oplossing gaan...

Last but not least: location is een property van het window object

[ Voor 12% gewijzigd door crisp op 22-01-2006 11:08 ]

Intentionally left blank


  • pderaaij
  • Registratie: Oktober 2005
  • Laatst online: 18-08-2025
Thanks! Het was dus inderdaad een timing probleem!

Over dat AJAX gebeuren. Ik snap de ophef niet helemaal, ik heb het namelijk al vaker om mijn oren gekregen. Maar AJAX is toch niet alleen maar een XMLHttpRequest. Wat ik nu begrijp is dat alles wat je zonder die request doet, geen AJAX is. Dat snap ik niet zo.

Ik heb dit van een tutorial genaamd "AJAX without XMLHttpRequest" trouwens.

  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

pderaaij schreef op zondag 22 januari 2006 @ 11:31:
Thanks! Het was dus inderdaad een timing probleem!

Over dat AJAX gebeuren. Ik snap de ophef niet helemaal, ik heb het namelijk al vaker om mijn oren gekregen. Maar AJAX is toch niet alleen maar een XMLHttpRequest. Wat ik nu begrijp is dat alles wat je zonder die request doet, geen AJAX is. Dat snap ik niet zo.

Ik heb dit van een tutorial genaamd "AJAX without XMLHttpRequest" trouwens.
XMLHttpRequest is imo een key-element van ajax; niet zozeer XML of asynchroon (waar jouw methode - wat overigens al een heel oud truukje is, nog voordat de term ajax ueberhaupt bestond - ook niet aan voldoet) ;)

Intentionally left blank