私は自分のhtmlに2つの画像を持っています。 1モバイル版(画面が992pxより小さい場合)とデスクトップ版で表示します。jQueryのスクロールアンカーはモバイルでは動作しますが、デスクトップでは動作しません
これらの画像にアンカーとして使用するIDを追加しました。すべてがモバイルデバイスでうまくいきますが、デスクトップ版ではアンカーに行きたくありません。たとえidがhtmlにあるとしても。
これは、HTMLでの私のイメージは次のようになります。 Dekstopメニュー:
<ul class="nav navbar-nav">
<li class="navbar-right"><a data-id="wie" href="#wie">Wie</a></li>
</ul>
モバイルメニュー:これらのリンクです
<img id="wie" class="cool-image-2" src="source1" alt="">
<img id="wie" class="cool-image-2" src="source2" alt="">
<ul class="nav mobile-nav-bar">
<li class="navbar-right"><a data-id="cont" href="#contact">Contact</a></li>
</ul>
これは私ですjQuery:
jQuery(".nav li a").click(function(e) {
e.preventDefault();
$id = jQuery(this).attr("data-id");
jQuery("a.clicked").removeClass("clicked");
jQuery(this).addClass("clicked");
console.log($id);
jQuery('html, body').animate({
scrollTop: jQuery("#"+$id).offset().top
}, 1000);
});
誰でもデスクトップ上で動作しない理由は何ですか?
多くの方々、ありがとうございます。
各画像に固有の「id」が必要です。 正しいコードは次のようになります。 ' ' – Aziz