如何从JavaScript数组/对象显示图像?从第一个图像开始,然后点击到下一个
How to display images from a JavaScript array/object? Starting with the first Image then onclick to the next
尝试从JavaScript数组中加载图像并在数组中显示第一个图像。然后,我需要添加一个函数,允许在数组中显示下一个图像,依此类推,直到数组结束。
<script>
var images = [ '/images/1.png', '/images/2.png' ];
function buildImages() {
for (var i = 0; i < images.length; i++) {
document.createElement(images[i]);
}
}
</script>
</head>
<body>
<div onload="buildImages();" class="contents" id="content"></div>
</body>
在images数组中是指向图像的路径。它们看起来像"server/images/05-08-2014-1407249924.png"
看我是怎么做的
<script>
var images = ['img/background.png','img/background1.png','img/background2.png','img/background3.png'];
var index = 0;
function buildImage() {
var img = document.createElement('img')
img.src = images[index];
document.getElementById('content').appendChild(img);
}
function changeImage(){
var img = document.getElementById('content').getElementsByTagName('img')[0]
index++;
index = index % images.length; // This is for if this is the last image then goto first image
img.src = images[index];
}
</script>
<body onload="buildImage();">
<div class="contents" id="content"></div>
<button onclick="changeImage()">NextImage</button>
</body>
我不确定div
是否有onload
事件,所以我调用了body的onload
。
// the container
var container = document.getElementById('content');
for (var i = 0; i < images.length; i++) {
// create the image element
var imageElement = document.createElement('img');
imageElement.setAttribute('src', images[i]);
// append the element to the container
container.appendChild(imageElement);
}
有关如何执行DOM操作/创建的更多信息,请参阅MDN和其他资源。这些会对你的发展有很大帮助。
JSFiddle
<body>
<img id="thepic"/>
<input type="button" id="thebutt" value="see next"/>
<script>
(function (){
var images = ['img/background.png','img/background1.png','img/background2.png','img/background3.png'];
var imgcnt = 1;
function changeIt() {
if(imgcnt<images.length){
document.getElementById("thepic").src=images[imgcnt++];
} else{
console.log("done")
}
}
document.getElementById("thepic").src=images[0];
document.getElementById("thebutt").onclick=changeIt;
})();
</script>
</body>
相关文章:
- JS-移动图像,暂停设置的时间,然后将图像向后移动
- 先加载特定的图像,然后再加载页面的其余部分
- Pinterest 扩展如何存储(临时)网页中的图像,然后在 iframe 中访问它们
- 单击时预置图像 - 仅预置一次,然后停止
- 单击从一张图像切换到两张图像,然后再切换回一张图像
- 将普通的 PNG 图像转换为 JSON 数据,然后存储到对象
- 将图像输出到浏览器,然后再将其保存到文件夹
- 图像的尺寸,然后检查标准
- 在html画布中显示一个图像,然后增大其大小
- 在首页动画化一个标志3秒钟,然后显示一个图像滑块
- 在上传之前预览图像,然后以aspmvc上传到服务器
- 如何在后台加载图像,然后在完成后显示页面
- 将生成的随机数存储在变量中,然后将该变量作为文件名调用以显示图像.Javascript
- 如何检测移动浏览器(PHP/Javascript),然后进行图像/文本更改
- 在一个简单的jquery幻灯片中,我的类到达图像的末尾,然后从DOM的边缘掉下来
- JavaScript:从javascript加载图像,然后等待该图像的“load”事件
- 如何获取页面上所有图像的来源,然后将它们全部放在一个分区中
- 如何使用画布更改图像的不透明度,然后将其加载到画布中的另一个图像上?-HTML
- 当缩放浏览器窗口到给定的浏览器窗口宽度时,向下裁剪图像.然后让图像的其余部分响应
- jQuery在悬停时更改图像(然后返回到初始图像)