4

好的,奇怪的问题:

1) 在 iPhone(Safari 浏览器)上访问:http: //powellcreative.com/our-team/

2) 点击任意团队图片进入团队成员页面

3) 点击浏览器上的返回按钮

4)图像现在在团队页面上消失了

4

1 回答 1

3

我知道这个问题有点老了,但我一直在寻找类似问题的解决方案,经过搜索,我找到了解决方案。希望这可以帮助其他有同样问题的人。问题是当你给iOS一个像onmouseover或onmouseout这样的javascript事件时它不喜欢它,主要是因为当你的手指在iOS中“鼠​​标悬停”一个元素时,你实际上是在点击它,所以这就是我来的解决方案在iOS中点击后退按钮后似乎重新加载图像。

这里是:

确保所有图像都在各自独立的 div 中,并具有独特的名称。例子:

<div name="div1"><a href="dosomething"><img src="yourimage" onmouseover="javascript:this.src='yourimage2';" onmouseout="javascript:this.src='yourimage';"></a></div> 

在页面的 javascript head 部分中,您要插入以下内容:

window.onpageshow = 
function(event){
if (event.persisted){
//for every div and image you want changed back you can add a loop here to change all at once or just one div by name//
document.getElementById('div1').innerHTML = '<a href="dosomething"><img src="yourimage" onmouseover="this.src="yourimage2";" onmouseout="this.src="yourimage";"></a>';
}
}

这将检查页面返回,因为 Mobile Safari 使用 bfcache 并将您的图像重新加载到 div 中。希望这有助于 OP 或其他人。

于 2013-06-14T23:57:43.900 回答