JQuery获取元素尺寸、位置及页面滚动事件应用示例


Posted in jQuery onMay 14, 2019

本文实例讲述了JQuery获取元素尺寸、位置及页面滚动事件应用。分享给大家供大家参考,具体如下:

获取元素尺寸

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
 <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
 <script type="text/javascript">
  $(function () {
   var $div=$('.box');
   //盒子内容的尺寸
   console.log($div.width());
   console.log($div.height());
   //盒子内容加上padding的尺寸
   console.log($div.innerWidth());
   console.log($div.innerHeight());
   //盒子的真实尺寸,内容尺寸加上padding加上brder
   console.log($div.outerWidth());
   console.log($div.outerHeight());
   //盒子的真实尺寸加上margin
   console.log($div.outerWidth(true));
   console.log($div.outerHeight(true));
  })
 </script>
 <style type="text/css">
  .box{
   width: 300px;
   height: 200px;
   padding: 20px;
   border: 10px solid #000;
   margin: 20px;
   background-color: gold;
  }
 </style>
</head>
<body>
 <div class="box">
  dd
 </div>
</body>
</html>

获取元素绝对位置

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
 <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
 <script type="text/javascript">
  $(function () {
   var $div=$('.box');
   //获取元素绝对位置
   var oPos=$div.offset();
   console.log(oPos);
   $div.click(function () {
    // alert(oPos.left);
    document.title=oPos.left+"|"+oPos.top;
   })
  })
 </script>
 <style type="text/css">
  .box{
   width: 200px;
   height: 200px;
   background-color: #f6b544;
   margin: 50px auto 0;
  }
 </style>
</head>
<body>
 <div class="box">
 </div>
</body>
</html>

主要就是offset()函数

加入购物车动画

设置一个按钮,一个购物车框,一个小方框(隐藏)。点击按钮之后,小方框的位置从按钮以animate动画的形式放到购物车框,购物车的数量加一:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
 <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
 <script type="text/javascript">
  $(function () {
   var $chart=$('.chart');
   var $count=$('.chart em');
   var $btn=$('.add');
   var $point=$('.points');
   var $w01=$btn.outerWidth();
   var $h01=$btn.outerHeight();
   $btn.click(function () {
    var oPos01=$btn.offset();
    var oPos02=$chart.offset();
    $point.css({left:oPos01.left+parseInt($w01/2)-8,top:oPos01.top+parseInt($w01/2)-8}).show();/*移动到购物车按钮上,然后show*/
    $point.animate({left:oPos02.left+parseInt($w01/2)-8,top:oPos02.top+parseInt($w01/2)-8},800,function () {
     $point.hide();
     var iNum=$count.html();/*读em里的信息*/
     $count.html(parseInt(iNum)+1);/*转换成int类型然后加一*/
    });
   })
  });
 </script>
 <style type="text/css">
  .chart{
   width: 150px;
   height: 50px;
   border: 2px solid #000;
   text-align: center;
   line-height: 50px;
   float: right;
   margin-right:100px ;
   margin-top: 100px;
  }
  .chart em{
   font-style: normal;
   color: red;
   font-weight: bold;
  }
  .add{
   width: 100px;
   height: 50px;
   border: 0;/*去掉边框*/
   background-color: green;
   color: #fff;
   float: left;
   margin-top: 300px;
   margin-left: 300px;
  }
  .points{
   width: 16px;
   height: 16px;
   background-color: red;
   position: fixed;/*固定定位,就是相对于页面位置的定位*/
   left: 0;
   top: 0;
   display: none;/*把小红点藏起来*/
   z-index: 999;/*这样设置小红点就能盖住其他元素*/
  }
 </style>
</head>
<body>
 <div class="chart">购物车<em>0</em></div>
 <input type="button" name="" value="加入购物车" class="add">
 <div class="points"></div>
</body>
</html>

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具 http://tools.3water.com/code/HtmlJsRun 测试上述代码运行效果。

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

jQuery 相关文章推荐
jquery插件制作 自增长输入框实现代码
Aug 17 jQuery
使用jQuery和ajax代替iframe的方法(详解)
Apr 12 jQuery
jQuery Ajax自定义分页组件(jquery.loehpagerv1.0)实例详解
May 01 jQuery
基于jQuery实现图片推拉门动画效果的两种方法
Aug 26 jQuery
jquery动态添加带有样式的HTML标签元素方法
Feb 24 jQuery
jQuery实现常见的隐藏与展示列表效果示例
Jun 04 jQuery
jQuery实现的页面详情展开收起功能示例
Jun 11 jQuery
jQuery实现获取动态添加的标签对象示例
Jun 28 jQuery
通过JQuery,JQueryUI和Jsplumb实现拖拽模块
Jun 18 jQuery
jquery向后台提交数组的代码分析
Feb 20 jQuery
jquery实现手风琴案例
May 04 jQuery
jquery插件懒加载的示例
Oct 24 jQuery
JQuery animate动画应用示例
May 14 #jQuery
jquery实现选项卡切换代码实例
May 14 #jQuery
JQuery样式操作、click事件以及索引值-选项卡应用示例
May 14 #jQuery
使用jQuery如何写一个含验证码的登录界面
May 13 #jQuery
JQuery特殊效果和链式调用操作示例
May 13 #jQuery
JQuery的加载和选择器用法简单示例
May 13 #jQuery
JQuery事件委托原理与用法实例分析
May 13 #jQuery
You might like
Dedecms常用函数解析
2008/02/01 PHP
codeigniter自带数据库类使用方法说明
2014/03/25 PHP
thinkPHP5框架设置404、403等http状态页面的方法
2018/06/05 PHP
CSS+Jquery实现页面圆角框方法大全
2009/12/24 Javascript
firebug的一个有趣现象介绍
2011/11/30 Javascript
打开新窗口关闭当前页面不弹出关闭提示js代码
2013/03/18 Javascript
Jquery的hide及toggle方法让超链接慢慢消失
2013/09/06 Javascript
jQuery插件Tooltipster实现漂亮的工具提示
2015/04/12 Javascript
js动态生成Html元素实现Post操作(createElement)
2015/09/14 Javascript
Angularjs CURD 详解及实例代码
2016/09/14 Javascript
AngularJS Select(选择框)使用详解
2017/01/18 Javascript
详解angularJs中关于ng-class的三种使用方式说明
2017/06/02 Javascript
20行JS代码实现网页刮刮乐效果
2017/06/23 Javascript
mpvue构建小程序的方法(步骤+地址)
2018/05/22 Javascript
Angular中sweetalert弹框的基本使用教程
2018/07/22 Javascript
JS加密插件CryptoJS实现的Base64加密示例
2020/08/16 Javascript
vue form 表单提交后刷新页面的方法
2018/09/04 Javascript
nodejs读取图片返回给浏览器显示
2019/07/25 NodeJs
VUE+node(express)实现前后端分离
2019/10/13 Javascript
nodejs中使用worker_threads来创建新的线程的方法
2021/01/22 NodeJs
React服务端渲染原理解析与实践
2021/03/04 Javascript
[42:39]老党炸弹人试玩视频
2014/09/03 DOTA
[49:28]VP vs Optic 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python实现查找excel里某一列重复数据并且剔除后打印的方法
2015/05/26 Python
Python的语言类型(详解)
2017/06/24 Python
python 获取图片分辨率的方法
2019/01/08 Python
关于Python 常用获取元素 Driver 总结
2019/11/24 Python
python字符串常用方法及文件简单读写的操作方法
2020/03/04 Python
Baby Tulai澳大利亚:美国婴儿背带品牌
2018/10/15 全球购物
绿化先进工作者事迹材料
2014/01/30 职场文书
保密工作实施方案
2014/02/24 职场文书
《长相思》听课反思
2014/04/10 职场文书
实验心得体会
2014/09/05 职场文书
助学贷款贫困证明
2014/09/23 职场文书
中国文明网向国旗敬礼寄语大全
2014/09/27 职场文书
节水宣传标语口号
2015/12/26 职场文书