我在ipad和iphone上使用fancybox时遇到了麻烦。应该打开灯箱的链接有时没有响应。链接css已重置且灯箱未显示。在桌面浏览器上,它可以正常工作。
我认为它与屏幕尺寸,ios设备上的缩放级别以及fancybox如何确定盒子的大小和位置有关。我注意到,如果我重新加载页面,链接有时会起作用。放大后,链接不再起作用。
我没有选择,任何帮助都会非常感激。
答案 0 :(得分:0)
它既不是iOS也不是fancybox问题。
除了您的验证问题,例如
Mismatch between Public and System identifiers in the DOCTYPE declaration
...因为你有:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
......你什么时候应该:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
...(如果你能看到差异)你的http://creactor.nl/script/javascript.js文件中还有一些与你的fancybox冲突的行:
var myLinks = document.getElementsByTagName('a');
for(var i = 0; i < myLinks.length; i++){
myLinks[i].addEventListener('touchstart', function(){this.className = "hover";}, false);
myLinks[i].addEventListener('touchend', function(){this.className = "";}, false);
}
我不是iOS的专家,所以我不能告诉你如何重写这些行,但如果你把它们隔离,那么fancybox就可以了。
我对您的网站进行了一次小清理,包括设置正确的DOCTYPE并重新组织脚本顺序,并注释掉上面的那些行,并且fancybox工作正常(在我的iPad中)。
检查 JSFIDDLE