链接到开放的fancybox无法在ios中工作

时间:2013-01-09 10:22:00

标签: jquery ios fancybox fancybox-2

我在ipad和iphone上使用fancybox时遇到了麻烦。应该打开灯箱的链接有时没有响应。链接css已重置且灯箱未显示。在桌面浏览器上,它可以正常工作。

我认为它与屏幕尺寸,ios设备上的缩放级别以及fancybox如何确定盒子的大小和位置有关。我注意到,如果我重新加载页面,链接有时会起作用。放大后,链接不再起作用。

我没有选择,任何帮助都会非常感激。

1 个答案:

答案 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