モバイルデバイス用に表示される小さなセカンダリナビゲーションバーを作成しようとしています。クリックしたリンクに応じて、最終的に特定のdivを表示および非表示にします。すべてが正しく呼び出されているかどうかを確認するためのテストとして、色の変更を使用しています。色の変更はデスクトップブラウザでは正常に機能しますが、スマートフォンでは機能しません。
ここでアドバイスを探した後、「委任」を試みましたが成功しませんでした。とにかく、live()はshow/hide関数に優れていると思います。私が見つけた他のアドバイスはどれも、この状況に関連しているようには見えませんでした。falseを返すのではなく、preventDefaultメソッドを使用してみましたが、2つの実際の違いは明確ではなく、どちらも機能しませんでした。
私は開発者ではなく設計者であり、jqueryは非常に初めてですが、基本的なコーディング用語とベストプラクティスにはある程度精通しています。
$('#nav2 a').unbind("click");
$('#nav2 a').live('click',function(){
$(this).css('color','#F00');
return false;
});
HTMLコードは次のようになります。
<div id="nav2"><p><ul>
<li><a href="index.html">Home</a></li>
<li><a href="#" class="smOnIssue">In This Issue</a></li>
<li><a href="#" class="smFeatures">Features</a></li>
<li><a href="#" class="smArchive">Archive</a></li>
</ul></p></div>
私が言ったように、それはデスクトップ上でうまく機能していますが、モバイルは何もしません。最新バージョンのjqueryを使用しています。ありがとうございました!私はあなたの誰かが私に与えることができるどんな助けにも本当に感謝します。