首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何避免在点击带ID的锚点时跳到顶部

如何避免在点击带ID的锚点时跳到顶部
EN

Stack Overflow用户
提问于 2020-05-08 21:02:55
回答 1查看 112关注 0票数 0

我创建了一个包含4张幻灯片的CSS/HTML carousel,当单击底部的按钮( href)时,它将显示所选的幻灯片。问题是,每次我点击一个链接,我都可以看到我想要的所选幻灯片,但页面会跳到顶部。我知道问题是因为我使用了ID,但我不知道如何避免页面跳转。我尝试添加这个脚本:

代码语言:javascript
复制
$('a.someclass').click(function(e) {
    e.preventDefault();
});

这是html:

代码语言:javascript
复制
<div class="slider">
    <div class="slides">
        <div id="slide-1"></div>
        <div id="slide-2"></div>
        <div id="slide-3"></div>
        <div id="slide-4"></div>
    </div>
    <a href="#slide-1" class="slide-button">Slide 1</a>
    <a href="#slide-2" class="slide-button">Slide 2</a>
    <a href="#slide-3" class="slide-button">Slide 3</a>
    <a href="#slide-4" class="slide-button">Slide 4</a>
</div>

但它不起作用。我该怎么做呢?谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-05-08 21:10:09

您的选择器错误。使用一个幻灯片按钮而不是a.someclass

$()必须是有效的jQuery DOM选择器

代码语言:javascript
复制
$('a.slide-button').click(function(e) {
    e.preventDefault();
});
代码语言:javascript
复制
.slides {
  height: 100vh;
  background-color: cyan;
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="slider">
    <div class="slides">
        <div id="slide-1"></div>
        <div id="slide-2"></div>
        <div id="slide-3"></div>
        <div id="slide-4"></div>
    </div>
    <a href="#slide-1" class="slide-button">Slide 1</a>
    <a href="#slide-2" class="slide-button">Slide 2</a>
    <a href="#slide-3" class="slide-button">Slide 3</a>
    <a href="#slide-4" class="slide-button">Slide 4</a>
</div>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61679817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档