0

ipad と iphone の fancybox で問題が発生しています。ライトボックスを開くはずのリンクが応答しないことがあります。リンク css がリセットされ、ライトボックスが表示されません。デスクトップブラウザでは問題なく動作します。

画面サイズ、iOSデバイスのズームレベル、そしてfancyboxがボックスのサイズと位置を決定する方法に関係があると思います。ページをリロードすると、リンクが機能する場合があることに気付きました。ズームインした後、リンクが機能しなくなりました。

私には選択肢がありません。どんな助けでも大歓迎です。

4

1 に答える 1

1

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をiOSと競合させる行もあります:

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を確認してください

于 2013-01-09T22:23:42.087 に答える