jQuery居中元素scrollleft计算方法示例


Posted in Javascript onJanuary 16, 2017

本文实例讲述了jQuery居中元素scrollleft计算方法。分享给大家供大家参考,具体如下:

如果需要将某个元素 在可以滚动元素(scroll)中设置为居中计算方法为:

需要的scrollleft + 普通居中时候的offsetLeft
= 当前的scrollleft+当前元素的offsetLeft
= 固定的当前元素在整个滚动条中距离左边的位置

DEMO示例:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title></title>
  <script src="jquery.js"></script>
  <style>
    ul, li {
      padding: 0px;
      margin: 0px;
      list-style: none;
    }
    ul {
      width: 1000000px;
    }
    li {
      height: 100px;
      float: left;
      border: 1px solid red;
    }
    li.selected {
      background-color: yellow;;
    }
  </style>
</head>
<body>
<div class="container" id="J_container"
style="width: 200px;height: 100px;border:1px solid gray; overflow-x: scroll; overflow-y: hidden;">
  <ul>
    <li>测试1</li>
    <li>测试1</li>
    <li>测试1</li>
    <li>测试1</li>
    <li>测试1</li>
    <li>测试1</li>
    <li>测试1</li>
    <li class="selected">请将我居中</li>
    <li>测试1</li>
    <li>测试1</li>
  </ul>
</div>
<script>
  $(function () {
    var item = $(".selected");
    var container = $("#J_container");
    var itemOffset = item.offset();
    var itemOffsetLeft = itemOffset.left + container.scrollLeft();
    var centerLeft = ( container.width() - item.width()) / 2;
    container.scrollLeft(itemOffsetLeft - centerLeft);
  })
</script>
</body>
</html>

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
两个select之间option的互相添加操作(jquery实现)
Nov 12 Javascript
屏蔽网页右键复制和ctrl+c复制的js代码
Jan 04 Javascript
JS调用CS里的带参方法实例
Aug 01 Javascript
正负小数点后两位浮点数实现原理及代码
Sep 06 Javascript
javascript中对Attr(dom中属性)的操作示例讲解
Dec 02 Javascript
javascript中的正则表达式使用指南
Mar 01 Javascript
jQuery实现的经典竖向伸缩菜单效果代码
Sep 24 Javascript
JavaScript获取浏览器信息的方法
Nov 20 Javascript
jQuery常用样式操作实例分析(获取、设置、追加、删除、判断等)
Sep 08 Javascript
vue最简单的前后端交互示例详解
Oct 11 Javascript
小程序实现日历左右滑动效果
Oct 21 Javascript
vue中 this.$set的使用详解
Nov 17 Vue.js
jQuery使用正则表达式替换dom元素标签用法示例
Jan 16 #Javascript
JavaScript日期选择功能示例
Jan 16 #Javascript
jquery——九宫格大转盘抽奖实例
Jan 16 #Javascript
jQuery的ajax中使用FormData实现页面无刷新上传功能
Jan 16 #Javascript
Node.js中用D3.js的方法示例
Jan 16 #Javascript
JavaScript实现的select点菜功能示例
Jan 16 #Javascript
使用AngularJS 跨站请求如何解决jsonp请求问题
Jan 16 #Javascript
You might like
在线竞拍系统的PHP实现框架(二)
2006/10/09 PHP
增加反向链接的101个方法 站长推荐
2007/01/31 PHP
基于jQuery中对数组进行操作的方法
2013/04/16 Javascript
JavaScript lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)
2014/10/17 Javascript
JavaScript获取当前日期是星期几的方法
2015/04/06 Javascript
谈谈JavaScript异步函数发展历程
2015/09/29 Javascript
JavaScript中0和&quot;&quot;比较引发的问题
2016/05/26 Javascript
Js+Ajax,Get和Post在使用上的区别小结
2016/06/08 Javascript
JavaScript中实现键值对应的字典与哈希表结构的示例
2016/06/12 Javascript
angular directive的简单使用总结
2017/05/24 Javascript
Angularjs在360兼容模式下取数据缓存问题的解决办法
2017/06/22 Javascript
使用vue-cli创建项目的图文教程(新手入门篇)
2018/05/02 Javascript
解决vue组件中click事件失效的问题
2019/11/09 Javascript
Vue解析带html标签的字符串为dom的实例
2019/11/13 Javascript
JavaScript设计模式之观察者模式与发布订阅模式详解
2020/05/07 Javascript
vue 解决uglifyjs-webpack-plugin打包出现报错的问题
2020/08/04 Javascript
jQuery中event.target和this的区别详解
2020/08/13 jQuery
[03:03]2014DOTA2国际邀请赛 EG战队专访
2014/07/12 DOTA
详解Python的Flask框架中生成SECRET_KEY密钥的方法
2016/06/07 Python
Python 机器学习库 NumPy入门教程
2018/04/19 Python
PyQt5每天必学之组合框
2018/04/20 Python
Python实现简单的用户交互方法详解
2018/09/25 Python
Pycharm设置去除显示的波浪线方法
2018/10/28 Python
对python遍历文件夹中的所有jpg文件的实例详解
2018/12/08 Python
Python面向对象思想与应用入门教程【类与对象】
2019/04/12 Python
pytorch绘制并显示loss曲线和acc曲线,LeNet5识别图像准确率
2020/01/02 Python
StubHub美国:购买或出售您的门票
2019/07/09 全球购物
毕业生的自我鉴定
2013/10/29 职场文书
创业者迈进成功第一步:如何写创业计划书?
2014/03/22 职场文书
教师读书活动总结
2014/05/07 职场文书
个人承诺书格式
2014/06/03 职场文书
三月学雷锋活动总结
2014/06/26 职场文书
2014年个人工作总结模板
2014/12/15 职场文书
毕业欢送会致辞
2015/07/29 职场文书
Python中相见恨晚的技巧
2021/04/13 Python
Android Studio实现带三角函数对数运算功能的高级计算器
2022/05/20 Java/Android