一个xml文件
<?xml version="1.0" encoding="utf-8"?><root><url>http://mat1.qq.com/luxury/images/2007/10/10/1.jpg</url><url>http://mat1.qq.com/luxury/images/2007/10/10/2.jpg</url><url>http://mat1.qq.com/luxury/images/2007/10/10/3.jpg</url></root>一段js代码var interval = 2.5;
var random_display = 1;
interval *=1000;
var list=new Array();
var image_index = 0;
image_list = new Array();
var xmlDoc = new ActiveXObject("MSXML2.DOMDocument");
var i=0;
loadXML();
function loadXML(){
xmlDoc.async="false";
xmlDoc.load("temp.xml");
xmlObj=xmlDoc.documentElement;
nodes = xmlDoc.documentElement.childNodes;
for (i=0;i<xmlObj.childNodes.length;i++){
list[i]=xmlObj.childNodes(i).text;
}
}for(var k=0:k<list.length;k++)
{
image_list[image_index++] = new imageItem(""+list[k].toString()+"");
}
var number_of_image = image_list.length;
function imageItem(image_location) {
this.image_item = new Image();
this.image_item.src = image_location;
}
function get_ImageItemLocation(imageObj) {
return(imageObj.image_item.src)
}
function generate(x, y) {
var range = y - x + 1;
return Math.floor(Math.random() * range) + x;
}
function getNextImage() {
if (random_display) {
image_index = generate(0, number_of_image-1);
}
else {
image_index = (image_index+1) % number_of_image;
}
var new_image = get_ImageItemLocation(image_list[image_index]);
return(new_image);
}
function rotateImage(place) {
var new_image = getNextImage();
document[place].src = new_image;
var recur_call = "rotateImage('"+place+"')";
setTimeout(recur_call, interval);
}
window.onload = function(){
rotateImage('img');}
一个html调用js
<!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>
<title>Untitled Page</title>
<script language="javascript" src="javascript/JScript1.js" type="text/javascript"></script>
</head>
<body >
<img id="img" src="http://mat1.qq.com/luxury/images/2007/10/10/1.jpg" width="250" height="300" />
</body>
</html>帮我看看那个段js代码有什么错
有郁闷的都搞了天了就是搞不出来
<?xml version="1.0" encoding="utf-8"?><root><url>http://mat1.qq.com/luxury/images/2007/10/10/1.jpg</url><url>http://mat1.qq.com/luxury/images/2007/10/10/2.jpg</url><url>http://mat1.qq.com/luxury/images/2007/10/10/3.jpg</url></root>一段js代码var interval = 2.5;
var random_display = 1;
interval *=1000;
var list=new Array();
var image_index = 0;
image_list = new Array();
var xmlDoc = new ActiveXObject("MSXML2.DOMDocument");
var i=0;
loadXML();
function loadXML(){
xmlDoc.async="false";
xmlDoc.load("temp.xml");
xmlObj=xmlDoc.documentElement;
nodes = xmlDoc.documentElement.childNodes;
for (i=0;i<xmlObj.childNodes.length;i++){
list[i]=xmlObj.childNodes(i).text;
}
}for(var k=0:k<list.length;k++)
{
image_list[image_index++] = new imageItem(""+list[k].toString()+"");
}
var number_of_image = image_list.length;
function imageItem(image_location) {
this.image_item = new Image();
this.image_item.src = image_location;
}
function get_ImageItemLocation(imageObj) {
return(imageObj.image_item.src)
}
function generate(x, y) {
var range = y - x + 1;
return Math.floor(Math.random() * range) + x;
}
function getNextImage() {
if (random_display) {
image_index = generate(0, number_of_image-1);
}
else {
image_index = (image_index+1) % number_of_image;
}
var new_image = get_ImageItemLocation(image_list[image_index]);
return(new_image);
}
function rotateImage(place) {
var new_image = getNextImage();
document[place].src = new_image;
var recur_call = "rotateImage('"+place+"')";
setTimeout(recur_call, interval);
}
window.onload = function(){
rotateImage('img');}
一个html调用js
<!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>
<title>Untitled Page</title>
<script language="javascript" src="javascript/JScript1.js" type="text/javascript"></script>
</head>
<body >
<img id="img" src="http://mat1.qq.com/luxury/images/2007/10/10/1.jpg" width="250" height="300" />
</body>
</html>帮我看看那个段js代码有什么错
有郁闷的都搞了天了就是搞不出来
解决方案 »
- 2005 第三方控件 为什么通过团队进来可以显示?平时却显示不了
- 急~CuteEditor 在asp.net C#里 可不可以不要清楚word格式啊
- 请教大侠,我想在一个页面退出时把这个页面之前上传的没用的文件删除了,请问怎么实现?
- 困扰的数据连接问题
- 一条sql查出所有类别前10条记录
- 大侠帮我看下,Error : System.Data.OleDb.OleDbException: INSERT INTO 语句的语法错误。
- asp的问题!
- Request为null求原因
- 急
- 如何保护自定义的控件DLL不给其它人调用啊?
- 关于ObjectDataSource 读取cokie的问题
- 有没有做过购物网站的,或者信息网站
实现图片循环显示的功能
for(var k=0:k <list.length;k++)
{
image_list[image_index++] = new imageItem(""+list[k].toString()+"");
}
报错说list.length没有对象
在html最下面加段js代码试试
<script language=javascript> rotateImage('img'); </script>
for(var k=0;k <list.length;k++)
???
a.xml,a.js,a.html
(1)三个文件均以utf格式保存.
(2)注意a.js里load时的xml的路径问题. 以 a.html和a.xml的相对位置为准.a.xml
<?xml version="1.0" encoding="utf-8"?>
<root>
<url>http://mat1.qq.com/luxury/images/2007/10/10/1.jpg</url>
<url>http://mat1.qq.com/luxury/images/2007/10/10/2.jpg</url>
<url>http://mat1.qq.com/luxury/images/2007/10/10/3.jpg</url>
</root> a.js var imgList = new Array();
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument");
xmlDoc.async = false;
xmlDoc.load("a.xml");
var imgItems = xmlDoc.selectNodes("//url");
for(var i=0;i<imgItems.length;i++)
{
imgList[i] = imgItems.item(i).text;
document.write(imgList[i] + "<br/>");
}a.html<html>
<script type="text/javascript" src="a.js">
</script></html>
但是现在
document[place].src = new_image;
document[....] 这样的错误!
还有这种写法?
可能我水平的问题,没见到过.document已经代表了你整个ie窗口的文档区了.它还能数组?你是想用 document.all("对象id")或是 document.getElementById("对象id") 或 document.getElementByName("对象name")
或 document.all.item("对象id") 或 document.getElementsByTagName("对象标签类别") 来操作img吧.给你 html的body区的那个 img定义一个id,然后用 document.getElementById("img的那个id").src=newImage
我之前没有 xml 时
这样做没有问题
可以实现我的效果
但是我们主管又说要用xml
搞得我又要用js来读xml
然后循环显示图片
现在就一直搞不出来
老是报上面那个错
不过我试一你的提议
看行不!
都快把我郁闷死了
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title> Untitled Page </title>
<script language="javascript" src="javascript/JScript1.js" type="text/javascript"> </script>
</head>
<body >
<img id="img" src="http://mat1.qq.com/luxury/images/2007/10/10/1.jpg" width="250" height="300" />
</body>
</html>
然后改你js里报错的那句:document[place].src = new_image;
改为
document.getElementById(place).src = new_image; 注意空格和其它问题,csdn会乱加些空格上去.