这个函数有什么问题?它在Opera和Firefox上可以运行,但在Windows下的Safari上无法运行。
“本地”链接在Firefox、Opera和Safari中运行良好(但是Safari会因某些原因显示alert1、alert2,然后是带有“src”的alert,而其他浏览器则显示alert1、alertSrc、alert2)。
“Google”链接在Opera、Firefox中运行良好(alert1、alertSrc、alert2),但在Safari中不起作用 - 只显示alertSrc。当有人从Safari点击“Google”链接时,Servlet“/pic/img.gif”不会收到请求。
问题出在哪里?如何解决?
谢谢。
function getImage(url) {
var image = document.createElement('img'); // new Image(1, 1);
image.src = url;
image.onload = function() {};
}
当我尝试获取图片时getImage('http://site.com/someservlet.gif'),由于someservlet.gif记录了所有请求,该图片未加载。在Opera和Firefox中可以正常工作,但在Safari中不行。我尝试使用"new Image()"和"document.createElement('img')",结果相同。
========== 更新: 当直接调用函数时,函数运行良好,但从事件监听器调用时出现问题。
<a href="http://google.com/"
onclick="getImage('http://127.0.0.1/pic/img.gif?rnd=' + Math.random());">google</a>
<a href="#"
onclick="getImage('http://127.0.0.1/pic/img.gif?rnd=' + Math.random());">local</a>
<script type="text/javascript">
function getImage(url) {
var image = document.createElement('img');
alert('1');
image.onload = function() {alert(image.src);};
image.src = url;
alert('2');
}
</script>
“本地”链接在Firefox、Opera和Safari中运行良好(但是Safari会因某些原因显示alert1、alert2,然后是带有“src”的alert,而其他浏览器则显示alert1、alertSrc、alert2)。
“Google”链接在Opera、Firefox中运行良好(alert1、alertSrc、alert2),但在Safari中不起作用 - 只显示alertSrc。当有人从Safari点击“Google”链接时,Servlet“/pic/img.gif”不会收到请求。
问题出在哪里?如何解决?
谢谢。