jQuery 滚动到锚点适用于移动设备,但不适用于桌面
jQuery scroll to anchor works on mobile but not on desktop
我的html中有2张图片。 1张显示在移动版本上(如果屏幕小于992px),另一张显示在桌面版本上。
我为这些图像添加了一个 id 以用作锚点。在移动设备上一切正常,但在桌面版本上,它不想去锚点。即使 id 在 html 中。
这是我在 html 中的图像的样子:
<img id="wie" class="cool-image-2" src="source1" alt="">
<img id="wie" class="cool-image-2" src="source2" alt="">
这些是链接:德克停止菜单:
<ul class="nav navbar-nav">
<li class="navbar-right"><a data-id="wie" href="#wie">Wie</a></li>
</ul>
移动菜单:
<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 的项目。仅使用一个 img 并根据设备更改源。使用它来了解您是否在移动设备上。
您有两个具有相同 ID 属性 "wie" 的 HTML 元素:
<img id="wie" class="cool-image-2" src="source1" alt="">
<img id="wie" class="cool-image-2" src="source2" alt="">
ID 属性值在 HTML 文档中必须是唯一的。
https://www.w3.org/TR/html5/dom.html#the-id-attribute
id 属性指定其元素的唯一标识符 (ID)。这 值在元素的 home 子树中的所有 ID 中必须是唯一的 并且必须至少包含一个字符。该值不得包含 任何空格字符。
相关文章:
- AddEventListener适用于浏览器,但不适用于Android
- 查找仅适用于原始图像的图像放大算法的名称
- 如何在category.php中执行jquery,这应该适用于类别wordpress中的每个帖子
- Web编程,简单但适用于机器人项目
- JavaScript不适用于internet explorer和Firefox,但适用于谷歌
- Jquery事件处理程序仅适用于匿名函数
- jQuery调整大小函数只适用于窗口
- 火灾在卸载前确认警报仅适用于外部站点
- EmberJS-适用于各种模型的适配器动态名称空间
- Facebook共享链接适用于用户,但不适用于粉丝页面管理员
- Javascript setTimeout适用于桌面,而不适用于android
- jQuery 滚动到锚点适用于移动设备,但不适用于桌面
- 响应式设计适用于桌面浏览器、移动模拟器(Safari和Mozilla Firefox),但不适用于真正的智能手机(And
- Ajax POST适用于桌面,但不适用于Phonegap App或Android
- Javascript不会在移动设备上加载.适用于桌面
- 是否有适用于桌面浏览器的WebView
- JQM适用于桌面浏览器,而不是移动设备
- jQuery/Bootstrap作品集只适用于桌面模式
- Href Javascript适用于桌面,但不适用于移动设备
- 我如何加载jquery移动只适用于移动浏览器,但常规网站桌面