2016-11-12 7 views
1

私のウェブサイトに役立つ特定のブラウザ/デバイスに問題があります。iPhone(Safari)のアンカータグが意図したとおりに機能しない

基本的には、クリックしたときに隠し要素を表示するアンカータグがあります。これは、iOS以外のすべてのもの(PC、Android FF/Chrome /ブラウザのFirefox/Chrome/IE)で意図したとおりに動作します。 "View Bio"リンクをクリックすると、テキストが移行して表示されます。 iOSでこれを行うとき、灰色のボックスが要素の上を移動します(したがって、そこに何かがあることがわかっていると仮定します)。しかし、隠された要素は表示されません。

いくつかの調査を行った後、iOSが "onclick"を扱う方法やその効果について問題があることがわかります。私は彼らが働いていないものの、いくつかの異なるもの(主にjavaベース)を実装しようとしました。この実装は純粋にHTML/CSSをベースにしているので、実際には私が必要とするものではないかもしれませんが、私が遭遇したすべてを試しました。一般に含まれる修正のほとんどは、隠された要素を伴わず、単純な「スクロール・ツー・ポイント」実装です。それは同じことでしょう。

私が知る限り、私が読んだ記事/既存のヘルプページから、iOSでアンカータグの何らかの不具合や嫌悪感があります。それは適用されないかもしれませんが、一部のユーザーによると、iOSは "onclick"または "click"を提供せず、むしろ何らかの形の "touch"を使用します。

これに対応する方法はありますか?意図的にiOSユーザーにサービスを提供している限り、ちょっと面倒なことはありません。 「クリック」を聞き取り、おそらく最も単純な解決策になるiOSの「触れた」ものとして扱う方法がある場合。私は専門家ではないので、私はうまくマークから外れる可能性があります。

マイコード:

<div class="dimg"> 
<img src="images/profile_1.png" alt="director1" height="200" width="200" class="img-responsive" style="border:2px solid #535353;"> 
</div> 
<a href="#" class="showme" onclick="return false">View Bio</a> 
<div id="desk" class="trans"> 
    <p>This is the text to be displayed when the anchor is clicked</p> 

CSS:

.showme { 
text-decoration:none; 
color:#535353; 
letter-spacing:1px; 
} 

.showme:focus + #desk { 
opacity:1; 
visibility:visible; 
position:relative; 
} 

#desk { 
visibility:hidden; 
opacity:0; 
position:absolute; 
border-radius:10px; 
margin-top:10px; 
text-align:left; 
} 
+0

あなたは、質問を短くしてくださいことはできますか? –

+0

確かに、私はそれが既に答えられているかもしれないと思う。基本的に、iOSデバイスでは、リンク「#」(隠された要素にアンカーするはずです)が機能しません。要素は非表示のままであり、リンクはunclickableであるかのように動作します。 iOSのみ。他のデバイスやブラウザで正常に動作します。 – Randorile

+0

最初に答えを確認してください。あなたの質問をより短くする(すべての関連情報を保持しながら)、あなたはより多くの(肯定的な)注意を得るのに役立ちます。 –

答えて

1

のiOSのSafariのCSS :focusに問題があります。

this questionの回答がうまくいくようです。あなたがあなたのリンクにtabindex="1"を追加する必要があります。可能であれば

<a href="#" class="showme" onclick="return false" tabindex="1">View Bio</a> 

https://jsfiddle.net/1kqxopzs/

+0

それを知っていた素晴らしい、それは簡単でした。興味のない、なぜ私はその作品を尋ねることができますか?もしそうでなければ私はそれを自分自身で調べてうれしいです。 – Randorile

+0

申し訳ありません@ランドルフ、なぜか分かりません。 – Alvaro

+0

それはクールです、私はそれを探しています。ちょうど私は何かを学ぶ!お手伝いありがとう。 – Randorile

関連する問題