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 进入页面默认给已赋值的复选框打钩
Mar 23 jQuery
原生Aajax 和jQuery Ajax 写法个人总结
Mar 24 jQuery
为JQuery EasyUI 表单组件增加焦点切换功能的方法
Apr 13 jQuery
jQuery复合事件结合toggle()方法的用法示例
Jun 10 jQuery
jQuery实现点击关注和取消功能
Jul 03 jQuery
vue+jquery+lodash实现滑动时顶部悬浮固定效果
Apr 28 jQuery
jQuery+vue.js实现的多选下拉列表功能示例
Jan 15 jQuery
jquery+php后台实现省市区联动功能示例
May 23 jQuery
JS拖动选择table里的单元格完整实例【基于jQuery】
May 28 jQuery
jQuery zTree插件快速实现目录树
Aug 16 jQuery
jQuery实现视频展示效果
May 30 jQuery
ajax jquery实现页面某一个div的刷新效果
Mar 04 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
PHP 简单数组排序实现代码
2009/08/05 PHP
几个有用的php字符串过滤,转换函数代码
2012/05/01 PHP
CodeIgniter配置之config.php用法实例分析
2016/01/19 PHP
制作个性化的WordPress登陆界面的实例教程
2016/05/21 PHP
PHP中list方法用法示例
2016/12/01 PHP
PHP cookie与session会话基本用法实例分析
2019/11/18 PHP
ThinkPHP5与单元测试PHPUnit使用详解
2020/02/23 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
2020/04/04 PHP
javascript 3d 逐侦产品展示(核心精简)
2014/03/26 Javascript
node.js中的fs.fchown方法使用说明
2014/12/16 Javascript
Prototype框架详解
2015/11/25 Javascript
Bootstrap每天必学之导航条(二)
2016/03/01 Javascript
easyUI实现类似搜索框关键词自动提示功能示例代码
2016/12/27 Javascript
JavaScript EventEmitter 背后的秘密 完整版
2018/03/29 Javascript
详解通过源码解析Node.js中cluster模块的主要功能实现
2018/05/16 Javascript
NodeJS搭建HTTP服务器的实现步骤
2018/10/12 NodeJs
Vue + Scss 动态切换主题颜色实现换肤的示例代码
2020/04/27 Javascript
vue-iview动态新增和删除的方法
2020/06/17 Javascript
原生js实现自定义消息提示框
2020/11/19 Javascript
python实现的系统实用log类实例
2015/06/30 Python
Python编程中字符串和列表的基本知识讲解
2015/10/14 Python
利用python爬取斗鱼app中照片方法实例
2017/12/03 Python
Python Requests库基本用法示例
2018/08/20 Python
python、Matlab求定积分的实现
2019/11/20 Python
Python3实现mysql连接和数据框的形成(实例代码)
2020/01/17 Python
python global和nonlocal用法解析
2020/02/03 Python
Python的历史与优缺点整理
2020/05/26 Python
Python接口自动化测试框架运行原理及流程
2020/11/30 Python
安装不同版本的tensorflow与models方法实现
2021/02/20 Python
温泉秘密:Onsen Secret
2020/07/06 全球购物
武汉世纪畅想数字传播有限公司.NET笔试题
2014/07/22 面试题
几个Linux面试题笔试题
2012/12/01 面试题
90后毕业生的求职信范文
2013/09/21 职场文书
奶茶店创业计划书范文
2014/01/17 职场文书
会计自荐信范文
2014/03/09 职场文书
新郎父亲婚礼致辞
2015/07/27 职场文书