如何用jquery实现点击后跳到页面指定位置

很多网站都有这种功能,主要为了让用户在长篇大论中比较迅速的跳到自己想要看的内容处,比如bootstrap就有相应的功能。

介绍一种非常简便可以实现这种功能的方式。

思路:1.这里要用到点击事件,因为点击处可能数量较多,因此最好用事件代理来处理,可以提高性能。

2.当点击一个按钮时,能够获取到与他相对应的元素的ID。

3.通过jquery的offset方法返回top和left两个属性后获取他的top属性。

4.用animate方法改变html的scrollTop属性,值为上面的top属性值。

以下是代码:

<!DOCTYPE html>
<html>
<head>
    <title>点击返回指定位置</title>
    <style>
        #nav{
            position: fixed;
            left:0;
            top:10px;
        }
        #nav li{
            width:50px;
            height:30px;
            font:bold 20px/30px simhei;
            text-align: center;
            list-style-type: none;
            background:#333;
            color:#fff;
            margin:10px 0;
            cursor: pointer;s
        }
        #list li{
            width:50%;
            height:300px;
            text-align: center;
            font:bold 100px/300px simhei;
            list-style-type: none;
            background:yellow;
            color:blue;
            margin:50px 200px;
        }
    </style>
</head>
<body>
    <ul id="nav">
        <li data-to="go1">1</li>
        <li data-to="go2">2</li>
        <li data-to="go3">3</li>
        <li data-to="go4">4</li>
        <li data-to="go5">5</li>
        <li data-to="go6">6</li>
        <li data-to="go7">7</li>
        <li data-to="go8">8</li>
        <li data-to="go9">9</li>
        <li data-to="go10">10</li>
        <li data-to="go11">11</li>
        <li data-to="go12">12</li>
        <li data-to="go13">13</li>
    </ul>
    <ul id="list">
        <li id="go1">1</li>
        <li id="go2">2</li>
        <li id="go3">3</li>
        <li id="go4">4</li>
        <li id="go5">5</li>
        <li id="go6">6</li>
        <li id="go7">7</li>
        <li id="go8">8</li>
        <li id="go9">9</li>
        <li id="go10">10</li>
        <li id="go11">11</li>
        <li id="go12">12</li>
        <li id="go13">13</li>
    </ul>
    <script src="jquery.min.js"></script>
    <script>
        $(‘#nav‘).on(‘click‘,‘li‘,function(e){
            var target = e.target;
            var id = $(target).data("to");
            $(‘html,body‘).animate({scrollTop:$(‘#‘+id).offset().top}, 800);
        });
    </script>
</body>
</html>

页面截图:

点击左边的数字,页面会跳到数字对应的位置,感觉就像坐电梯一样。

时间: 2024-11-10 07:09:10

如何用jquery实现点击后跳到页面指定位置的相关文章

html锚点 点击跳转到页面指定位置

本来是在看阮大神写的ajax教程,突然发现点击目录文字会跳转到相对应的文本内容,于是乎激发了我的兴趣. 这个究竟怎么做的,刚开始看的时候一知半解,找度娘就是:"点击跳转到页面指定位置",找了下,原来专业术语叫:锚点. 度娘真是个博大精深的地方,有着多种的方法可以使用. 最简单的一种: 设置a标签的锚点就行啦,但是有个确定链接会更改,不利于刷新 <div class="skip" id="skip"> <h2>目录</

html js点击按钮滚动跳转定位到页面指定位置(DIV)的方法代码

一:通过html锚点实现滚动定位到页面指定位置(DIV):    如果我们要点击实现跳转的地方是一个html锚点,也就是点击一个A标签超链接实现跳转,可以把A标签的href属性直接指向跳转指定位置的div,代码实现思路如下: <a class="banner" href="/schoolFair/registration#nav"> <a href="#abc">点击跳转</a>    <div id=&

点击链接实现定位当前页面指定位置

点击链接实现定位当前页面指定位置:在很多网页都有这样的功能,点击一个链接会实现在当前页面的定位功能,实现此功能非常的简单,但是可能学者或者没有接触的朋友还不不了解,下面就对此做一下简单的介绍. <a href="#jump">蚂蚁部落</a> <p id="jump">只有努力才有美好的明天.</p> 以上代码是进行了压缩,将链接的href属性值设置为#+指定元素的id属性值,就可以使它们建立起 相互关系,这样点击链接

asp.net在同一页面跳转到指定位置

方案一 location.hash = "#ID" location.hash 可以在同一页面跳转到指定的位置. 页面没有缓冲,一下子就到了指定位置,很突兀 方案二 var hr = $("#ID"); var anh = $(hr).offset().top; $("html,body").stop().animate({ scrollTop: anh }, 2000); 页面平缓的滑到指定的位置,2000毫秒 #ID里面是要滑到的位置.

通过href简单实现单击a链接跳转到页面指定位置

在页面中点击a标签后,要使其跳到页面里面相应的地方,方法很简单,就是在a标签里面href中的内容和你要跳到这个区域的id同名即可,例如: <a href="#ppp" target="_blank">jump</a> <p>p1</p><br/><br/><br/> <p>p1</p><br/><br/><br/> <

HTML中有一个button,如何让它点击后跳转到指定页面或动作

< a  href = "路径" >< input  type = "button" ></ input ></ a > 在按钮外面扩一个a标签就好了

HTML实现跳转到页面指定位置

1 <a href="#page1">跳转到页面1</a> 2 3 <a href="#page2">跳转到页面2</a> 4 <br> 5 <div id="page1" style="height:1000px;">词条1</div> 6 <div id="page1">词条2</div> 7 8

跳到页面指定地方

方法1 <a href="#abc">家用电器</a> <div id="abc">这里显示的是家用电器</div> 方法2 scrollIntoView()方法 如果给这个方法传入true 作为参数,或者不传入任何参数,那么窗口滚动之后会让调用元素的顶部与视口顶部尽可能平齐.如果传入false 作为参数,调用元素会尽可能全部出现在视口中,(可能的话,调用元素的底部会与视口顶部平齐.)不过顶部不一定平齐,例如: //让

使用target属性跳转到指定位置

先上代码,使用frameset将网页分割为三个窗口,上,左和右. 1 <html> 2 <head> 3 <title>Main</title> 4 <meta content = 'text/html'; charset = 'utf-8'> 5 </head> 6 <frameset rows = '15%, *'> 7 <frame src = 'top.html'> 8 <frameset col