以前曾经以为用动态加载script或者iframe都可以实现动态加载数据,今天试验了一下发现script的方法在ns下面没有用,iframe的方法实现如下:
sample.html:
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<title>emu's sample of load data dynamically</title>
<meta name="generator" content="editplus">
<meta name="author" content="emu">
<meta name="keywords" content="javascript,netscape,cross-browser">
<meta name="description" content="a sample of load data dynamically by iframe">
</head>
<body onload="out.innerhtml=''">
<iframe id=testloaddata style="width:0;height:0;visibility:hidden;position:absolute"></iframe>
<input type=button onclick="test()" value="test">
<div id=output></div>
<script language="javascript">
<!--
var t;
var sumfrm = document.getelementbyid("testloaddata");
var out = document.getelementbyid("output");
function test(){
sumfrm.src="test.html?"+new date();
}
function receivedata(){
for (var i = 0 ; i < arguments.length ; i++)
out.innerhtml += "<br><br><a href='"+arguments[i]+"'>"+arguments[i]+"</a>";
}
//-->
</script>
</body>
</html>
test.html:
<html>
<body onload="setdata()">
<script language="javascript">
<!--
function setdata(){
parent.receivedata("http://www.csdn.net","http://www.iecn.net");
}
//-->
</script>
</body>
</html>
两个文件要放在同一目录下。test.html当然可以换成jsp或者php之类的任何动态页面。
ie5,ns6,moz1.3b下测试通过。