我有一个相册,当用户单击 FORWARD 或 BACK 时,它会循环显示一系列图像,这是通过 Javascript 设置 img 的 src 实现的。它在 FF、Opera、IE 和 Safari 上正常工作,但在 Chrome 中不能正常工作——在 Chrome 中,图像有时会出现,有时是空白。如果图像被缓存,它们就会显示出来,但如果它们还没有被加载,Chrome 就不会加载它们。我已经确认元素中的 src 设置正确,只是没有显示。
如果图像加载到页面的 html 中,当在 javascript 中设置 .src 时,它们会正确显示,但如果它们不在加载的 html 代码中,那么其中一些会显示,有些不会 - 但仅在 Chrome 中,在所有其他浏览器中它似乎工作正常。
我是否需要为 Chrome 使用一些缓存设置,或者我可以做一些 hack 来确保这些设置正确加载?
感谢大家。
罗素
(已添加)下面是一些代码。它被生成,这是奇怪常量的来源,文件继续有几百个
<HTML>
<HEAD>
<link href="../lame.css" rel="stylesheet" type="text/css">
<TITLE>Young/Haraske slides</TITLE>
<script src="../lame.js"></script>
<script>
var int2atts = [], int2path = [], paths = {}, atts;
atts = {}
int2atts[36] = atts;
int2path[36] = "Families/Young/Russell"
window.onload = function() {substituteNodeInfo(); showPage(254);}
var imagePtr = 0;
function nextImage(i) {
imagePtr = (imagePtr + i + 254) % 254;
var nextSrc = document.getElementById("photo" + imagePtr).src
var mainImage = document.getElementById("MainImage");
var src = mainImage.src;
mainImage.src = src.substring(0, src.lastIndexOf("/")) + nextSrc.substring(nextSrc.lastIndexOf("/"));
return false;
}
</script>
</HEAD>
<BODY id="pathBody">
<H1 id="pageTitle">Russell</H1>
<div>
<img id="MainImage" src="../pictures/1845DEC61.JPG"></img>
<h3 id="Title">Russell</h3>
<div id="Text"></div>
<a href="" onclick="return nextImage(-1)">Previous</a>
<a href="" onclick="return nextImage(1)">Next</a>
<p />
This filter is included in the following paths:
<ul class="paths">
<li class="path"><a href="../folders/Russell.html?path=36">Families/Young/Russell</a></li>
</ul>
</div>
<div class="choosePage"></div>
<ul id="gallery" class="filteredItems">
<li id="listing0" class="lineblock"><p>
<a class='folder' href="../items/1845DEC61.html">
<img id="photo0" src='../thumbnails/1845DEC61.JPG' alt='1845DEC61.JPG'>
<br />Image page</a>/<a href="../fullsize/1845DEC61.JPG">Full size</a>
<br />1845DEC61.JPG
</li>
<li id="listing1" class="lineblock"><p>
<a class='folder' href="../items/1669.html">
<img id="photo1" src='../thumbnails/1669.JPG' alt='1669.JPG'>
<br />Image page</a>/<a href="../fullsize/1669.JPG">Full size</a>
<br />1669.JPG
</li>
最佳答案
也许您可以尝试通过 ajax 预取图像,如下所述:http://www.4thkingdom.com/public/computers/789073-web-site-speed-prefetching-images-css/view-post.html
关于javascript - 在 javascript 中设置时,Chrome 不加载 img src,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5119440/