js 页面滚动到指定位置

项目中,本来想通过点击左侧列表让页面进行快速导航(根据 id="item" 和 a标签的 href 属性【<a href="#item"></a>】),不过滚动后的页面一直是顶在浏览器页面顶部的,不符合项目需求,所以就通过 js 代码让页面进行指定位置滚动,代码如下:

$(".left_nav>ul>li").click(function () {
        var n = parseInt($(this)[0].id);
        switch (n){
            case 0: x = 252; break;
            case 1: x = 816; break;
            case 2: x = 1257; break;
            case 3: x = 1662; break;
            case 4: x = 2237; break;
            case 5: x = 2660; break;
            default: x = 252;
        }
        $("body,html").scrollTop(x);
    }); // 左侧快速导航滚动

左侧快速导航页面结构如下:

<div class="left_nav">
        <ul>
            <li id="0"><a href="javascript:void(0)">猜你<br>喜欢</a></li>
            <li id="1"><a href="javascript:void(0)">专用<br>教材</a></li>
            <li id="2"><a href="javascript:void(0)">教材<br>特色</a></li>
            <li id="3"><a href="javascript:void(0)">系列<br>教材</a></li>
            <li id="4"><a href="javascript:void(0)">大班</a></li>
            <li id="5"><a href="javascript:void(0)">小班</a></li>
        </ul>
    </div>

代码结构样式如下:

.left_nav {
    position: fixed;
    left: calc((100% - 1240px) / 2 - 90px);
    bottom: 60px;
}
.left_nav>ul {
    padding: 0;
    margin: 0;
    list-style: none;
    border: 1px solid #5d5656;
    border-top: none;
    box-sizing: border-box;
}
.left_nav>ul>li {
    width: 51px;
    height: 51px;
    text-align: center;
    background: #808080;
    border-top: 1px solid #5d5656;
}
.left_nav>ul>li:hover {
    background: #F95E01;
}
.left_nav>ul>li>a {
    display: inline-block;
    font-size: 14px;
    color: #f5f5f5;
    margin-top: 6px;
    text-decoration: none;
}
.left_nav>ul>li:first-child+li+li+li+li>a {
    margin-top: 14px;
}
.left_nav>ul>li:first-child+li+li+li+li+li>a {
    margin-top: 14px;
}

O(∩_∩)O谢谢!!

时间: 2024-08-09 19:51:46

js 页面滚动到指定位置的相关文章

页面滚动到指定位置

在chrome中使用body滚动: $("body").animate({"scrollTop":200},600) 但是在firefox中却要使用html: $("html").animate({"scrollTop":200},600) 综合一下,这样就都可以滚动了(其他浏览器也没问题): $("html,body").animate({"scrollTop":200},600)

监听页面滚动及滚动到指定位置

两种监听页面滚动的方法 一.原生js通过window.onscroll监听window.onscroll = function() {//为了保证兼容性,这里取两个值,哪个有值取哪一个//scrollTop就是触发滚轮事件时滚轮的高度var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;console.log("滚动距离" + scrollTop);} 二.Jquery通过$(wind

js将滚动条滚动到指定位置的方法

代码如下(主要是通过设置Location的hash属性): <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <

scroll 滚动到指定位置触发事件 and 点击一按钮/链接让页面定位在指定的位置

scroll 滚动到指定位置触发事件:$(function(){ $(window).scroll(function() { var s =$(window).scrollTop(); if (s>=782) {//782是导航条离页面顶部的距离(px) $('.nav').addClass('fixednav'); } else{ $('.nav').removeClass('fixednav'); } });}); .fixednav{ position:fixed; top:0px; le

页面滚动到一定位置时才显示在指定位置上的元素的jquery代码

当前可视窗口的顶部到页面的顶部高度+可视页面的高度>元素的绝对高度+元素自身高度时,显示当前元素. 页面滚动到一定位置时才显示在指定位置上的元素! 将$(".timeline.animated .timeline-row")换成指定的选择器即可! (function() {  $(document).ready(function() {    var timelineAnimate;    timelineAnimate = function(elem) {      retur

js滚动到指定位置导航栏固定顶部

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>js滚动到指定位置导航栏固定顶部</title> <style type="text/css"> body{height: 2500px; margin: 0; padding: 0;} .banner{height: 250px; width: 100%; bac

微信小程序点击滚动到指定位置

公司项目要做一个类似微信通讯录导航的效果,点击右侧字母页面滚动到相应位置. 因为微信小程序没有dom概念,所以不能使用锚点,也不能直接获取对应字母相对页面的偏移位置.此时只能使用小程序创建对象实例的API获取节点信息: let query = wx.createSelectorQuery().in(this); query.selectViewport().scrollOffset() query.select("#Nav").boundingClientRect(); query.s

js页面滚动时层智能浮动定位实现:

案例展示: 第一个:每个人都有看过的淘宝页面: 案例就不多说了,有兴趣的可以多去找找, 这样的智能浮动效果还是不错的,挺方便. 基本的实现原理: 首先有一个默认状态就是没有滚动的时候,什么事情也不用做,定位可以是absolute,也可以是stati,fixed,relartive 这些都可以.我们主要需要关注的是当浏览器滚动的时候,(要浮动的块)要移除浏览器界面视区的时候,修改其position属性,让其浮动在窗口的上沿显示就可以了.最好的position属性就是fixed了,可以在IE6+和其

IOS学习之UITableView滚动到指定位置

IOS学习之UITableView滚动到指定位置 方法很简单: - (void)scrollToRowAtIndexPath:(NSIndexPath *)indexPath atScrollPosition:(UITableViewScrollPosition)scrollPosition animated:(BOOL)animated 有些需要注意的地方: 如果在reloadData后需要立即获取tableview的cell.高度,或者需要滚动tableview,那么,直接在reloadDa