HTML页面
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
</head>
<body>
<div id="ad">
<script type="text/javascript" src="ad.js"></script>
</div>
</body>
</html>ad.js页面
document.write("<div>hello</div>");请问如何用动态加载的方式加载这个ad.js比如
var script = document.createElement("script");
script.type="text/javascript";
script.src= "ad.js";
document.getElementById('ad').appendChild(script);
虽然加载进去了但是没有执行
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
</head>
<body>
<div id="ad">
<script type="text/javascript" src="ad.js"></script>
</div>
</body>
</html>ad.js页面
document.write("<div>hello</div>");请问如何用动态加载的方式加载这个ad.js比如
var script = document.createElement("script");
script.type="text/javascript";
script.src= "ad.js";
document.getElementById('ad').appendChild(script);
虽然加载进去了但是没有执行
window.onload = function(){
document.write("<div>hello</div>");
}
document.write("<div>hello</div>") 导致的
function writeDiv() {
document.write("<div>hello</div>");
}页面文件内容:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script type="text/javascript" src="ad.js"></script>
</head>
<body>
<div id="ad">
<script type="text/javascript">writeDiv()</script>
</div>
</body>
</html>
document.getElementById('ad').innerHTML+="<div>hello</div>";
}
<html>
<head>
</head>
<body>
<div id="ad">
</div>
</body>
<script type="text/javascript">
window.onload = function(){
var script = document.createElement("script");
script.type="text/javascript";
script.src= "ad.js";
script.onload = function(){
document.getElementById('ad').appendChild(script);
}
}
</script>
</html>
页面~~
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
</head>
<body>
<div id="ad">
</div>
</body>
<script type="text/javascript">
var script = document.createElement("script");
script.type="text/javascript";
script.src= "data.js";
document.getElementById("ad").appendChild(script);
}
</script>
</html>ad.js
window.onload = function(){
document.write("<div>hello</div>");
}
document.write("<div>hello</div>");改成
window.onload = function(){
document.write("<div>hello</div>");
}
elem.innerHTML = "<div>hello</div>";
}
HTML页面:<!DOCTYPE html>
<html>
<head>
<title>test</title>
</head>
<body>
<div id="ad"></div>
<script>
function adLoadCallback(){
var ad = document.getElementById('ad');
sayHello(ad);
}
var script = document.createElement("script");
script.type="text/javascript";
script.src= "ad.js";
if(document.all){
script.onreadystatechange = adLoadCallback;
}else{
script.onload = adLoadCallback;
}
document.body.appendChild(script);
</script>
</body>
</html>
放到onload里,是HTML的一个加载完界面后的事件,页面加载完成后,会执行window的onload的方法,这时候再write就可以出来了。
因为以前的写法就是这样的。
<div id="ad">
<script type="text/javascript" src="ad.js"></script>
</div>
11楼写的有点问题就是当我用火狐firebug的时候查看页面元素的时候整个页面会变成
<html><head></head><body><div>hello</div></body></html>
然后怎么刷新都还是这样。
主页面:<!DOCTYPE html>
<html>
<head>
<title>test</title>
</head>
<body>
<div id="ad"></div>
<script>
window.onload = function(){
function adLoadCallback(){
var ad = document.getElementById('ad');
sayHello(ad);
}
var script = document.createElement("script");
script.type="text/javascript";
script.src= "ad.js";
document.body.appendChild(script);
}
</script>
</body>
</html>ad.js:function sayHello(elem){
elem.innerHTML = "hello";
}
<html>
<head>
<title>test</title>
</head>
<body>
<div id="ad"></div>
<script>
window.onload = function(){
function adLoadCallback(){
var ad = document.getElementById('ad');
sayHello(ad);
}
var script = document.createElement("script");
script.type="text/javascript";
script.src= "ad.js";
if(document.all){
script.onreadystatechange = adLoadCallback;
}else{
script.onload = adLoadCallback;
}
document.body.appendChild(script);
}
</script>
</body>
</html>