下面运行,点击页面的DIV运行函数a()的时候,报bank[0]为空,请大家帮忙看是什么问题
或者大家如何有更好的调用XML中的DIV,可以贴出来,谢谢
代码如下:<!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=gb2312" />
<title>无标题文档</title>
<script type="text/javascript">
var AJAX = (function(AJAX){
return function(url){
var ajax = AJAX();
ajax.open("GET", url, false);
ajax.send("");
return ajax;
};
})(this.XMLHttpRequest ?
function() {return new XMLHttpRequest;} :
function() {return new ActiveXObject("Microsoft.XMLHTTP");}
);
var bank = AJAX("image-flow.xml").responseXML.getElementsByTagName("div").item(0).getElementsByTagName("img");
function a(){
document.getElementById("aa").innerHTML=bank[0].innerHTML;
}
</script>
</head><body>
<div id="aa" style=" background-color:#0066CC; position:absolute; height:400px; width:400px;" onclick="a();"></div>
</body>
</html>image-flow.xml文件
<?xml version="1.0" encoding="ISO-8859-1" ?>
<div>
<img src="图片集/45.jpg" />
</div>
或者大家如何有更好的调用XML中的DIV,可以贴出来,谢谢
代码如下:<!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=gb2312" />
<title>无标题文档</title>
<script type="text/javascript">
var AJAX = (function(AJAX){
return function(url){
var ajax = AJAX();
ajax.open("GET", url, false);
ajax.send("");
return ajax;
};
})(this.XMLHttpRequest ?
function() {return new XMLHttpRequest;} :
function() {return new ActiveXObject("Microsoft.XMLHTTP");}
);
var bank = AJAX("image-flow.xml").responseXML.getElementsByTagName("div").item(0).getElementsByTagName("img");
function a(){
document.getElementById("aa").innerHTML=bank[0].innerHTML;
}
</script>
</head><body>
<div id="aa" style=" background-color:#0066CC; position:absolute; height:400px; width:400px;" onclick="a();"></div>
</body>
</html>image-flow.xml文件
<?xml version="1.0" encoding="ISO-8859-1" ?>
<div>
<img src="图片集/45.jpg" />
</div>
document.getElementById("aa").innerHTML=bank[0].getAttribute('src');
document.getElementById("aa").innerHTML=bank[0].xml;
}
if (window.ActiveXObject) return new window.ActiveXObject('Microsoft.XMLHTTP');
else if (window.XMLHttpRequest) return new window.XMLHttpRequest();
else return null;
}
function getText(node){
return node.xml ? node.xml : (new XMLSerializer()).serializeToString(node);
}
var xhr = creatXHR();
xhr.open('GET', 'image-flow.xml', false);
xhr.onreadystatechange = function(){
if (xhr.readyState == 4 && xhr.status == 200) {
var text = getText(xhr.responseXML.getElementsByTagName('div')[0]);
document.getElementById("aa").innerHTML = text;
}
}
xhr.send(null);
var xhr = creatXHR();
xhr.open('GET', 'image-flow.xml', false);
xhr.send(null);
var text = getText(xhr.responseXML.getElementsByTagName('div')[0]);
document.getElementById("aa").innerHTML = text;
你运行通过了?我运行还是报
return node.xml ? node.xml : (new XMLSerializer()).serializeToString(node);这行错误:缺少对象
在IE6上还是有
return node.xml ? node.xml : (new XMLSerializer()).serializeToString(node); 这行错误:缺少对象
var text = getText(xhr.responseXML.getElementsByTagName('div')[0]);
document.getElementById("aa").innerHTML = text;
}var xhr = creatXHR();
xhr.open('GET', 'xml.xml', false);
xhr.send(null);
try {
done(xhr);
} catch (e) {
xhr.onreadystatechange = function(){
if (xhr.readyState == 4 && xhr.status == 200) {
done(xhr);
}
}
}
我都不好意思了............
还是搞不顶呢,你能不能在dreamweaver上调试运行通过后,然后把代码贴出来
我菜得不行了
<?xml version="1.0" encoding="utf-8"?>
<div>
<img src="图片集/45.jpg"></img>
</div>
格式我改了,你把你测试对了的代码全贴出来,HTML文件,XML都贴出来,
我不明白怎么回事.......真的很感谢你这么尽心帮忙!
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript">
function creatXHR(){
if (window.ActiveXObject) return new window.ActiveXObject('Microsoft.XMLHTTP');
else if (window.XMLHttpRequest) return new window.XMLHttpRequest();
else return null;
}
function getText(node){
return node.xml ? node.xml : (new XMLSerializer()).serializeToString(node);
}
function done(xhr){
var text = getText(xhr.responseXML.getElementsByTagName('div')[0]);
document.getElementById("aa").innerHTML = text;
}
</script>
</head>
<body>
<div id="aa"></div>
<script type="text/javascript">
var xhr = creatXHR();
xhr.open('GET', 'image-flow.xml?r='+ (new Date()).getTime(), false);
xhr.send(null);
try {
done(xhr);
} catch (e) {
xhr.onreadystatechange = function(){
if (xhr.readyState == 4 && xhr.status == 200) {
done(xhr);
}
}
}
</script>
</body>
</html>
烦躁了,我在IE核心浏览器上运行都不行,在FF,SAFARI,OPERA都可以究竟是咋回事,有点想摔电脑了