私のウェブサイトに役立つ特定のブラウザ/デバイスに問題があります。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;
}
あなたは、質問を短くしてくださいことはできますか? –
確かに、私はそれが既に答えられているかもしれないと思う。基本的に、iOSデバイスでは、リンク「#」(隠された要素にアンカーするはずです)が機能しません。要素は非表示のままであり、リンクはunclickableであるかのように動作します。 iOSのみ。他のデバイスやブラウザで正常に動作します。 – Randorile
最初に答えを確認してください。あなたの質問をより短くする(すべての関連情報を保持しながら)、あなたはより多くの(肯定的な)注意を得るのに役立ちます。 –