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 () {
      console.log('可视区的宽度:'+$(window).width());
      console.log('可视区的高度:'+$(window).height());
      console.log('文档的高度:'+$(document).height());
      console.log('文档的宽度:'+$(document).width());
    })
  </script>
</head>
<body>
  <p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
</body>
</html>

JQuery获取可视区尺寸和文档尺寸及制作悬浮菜单示例

可视区和文档的宽度是一样的,可视区和文档的高度不一样。

console.log('可视区的宽度:'+$(window).width());
console.log('可视区的高度:'+$(window).height());
console.log('文档的高度:'+$(document).height());
console.log('文档的宽度:'+$(document).width());

scrollLeft和scrollTop

JQuery获取可视区尺寸和文档尺寸及制作悬浮菜单示例

JQuery获取可视区尺寸和文档尺寸及制作悬浮菜单示例

置顶菜单

悬停菜单:

往下拉动滚动条的时候,如果菜单超出浏览器的可视区了,就悬停在浏览器上部

实现方法:

得到scrolltop的值,如果菜单出去了,就把菜单绝对定位在上部

position:'fixed',  固定定位
left:'50%',  和marginLeft一起使用,使菜单居中
top:0,
marginLeft:-480

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <style type="text/css">
    body{
      margin: 0;
    }
    .banner{
      width: 960px;
      height: 200px;
      background-color: cyan;
      margin: 0 auto;
    }
    .menu{
      width: 960px;
      height: 100px;
      background-color: gold;
      margin: 0 auto;
      text-align: center;
      line-height: 80px;
    }
    p{
      text-align: center;
      color: red;
    }
  </style>
  <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
  <script type="text/javascript">
    $(function () {
      $menu=$('.menu');
      $(window).scroll(function () {
        var iNum=$(document).scrollTop();
        // document.title=iNum;
        if(iNum>200){
          $menu.css({
            position:'fixed',
            left:'50%',
            top:0,
            marginLeft:-480
          })
        }
        else {
          $menu.css({
            position:'static',
            marginLeft:'auto'
          })
        }
      })
    })
  </script>
</head>
<body>
  <div class="banner"></div>
  <div class="menu">菜单</div>
  <p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
<p>文档内容</p>
  <br />
  <br />
  <br />
  <br />
</body>
</html>

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

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

jQuery 相关文章推荐
JQuery实现图片轮播效果
May 08 jQuery
jQuery中clone()函数实现表单中增加和减少输入项
May 13 jQuery
解决jQuery ajax动态新增节点无法触发点击事件的问题
May 24 jQuery
基于jQuery和CSS3实现APPLE TV海报视差效果
Jun 16 jQuery
基于Jquery Ajax type的4种类型(详解)
Aug 02 jQuery
Vue中正确使用jQuery的方法
Oct 30 jQuery
为jquery的ajax请求添加超时timeout时间的操作方法
Sep 04 jQuery
jQuery实现的隔行变色功能【案例】
Feb 18 jQuery
jQuery实现的记住帐号密码功能完整示例
Aug 03 jQuery
jQuery实现每日秒杀商品倒计时功能
Sep 06 jQuery
jQuery实现鼠标移入显示蒙版效果
Jan 11 jQuery
Jquery如何使用animation动画效果改变背景色的代码
Jul 20 jQuery
jquery 验证用户名是否重复代码实例
May 14 #jQuery
JQuery获取元素尺寸、位置及页面滚动事件应用示例
May 14 #jQuery
JQuery animate动画应用示例
May 14 #jQuery
jquery实现选项卡切换代码实例
May 14 #jQuery
JQuery样式操作、click事件以及索引值-选项卡应用示例
May 14 #jQuery
使用jQuery如何写一个含验证码的登录界面
May 13 #jQuery
JQuery特殊效果和链式调用操作示例
May 13 #jQuery
You might like
ThinkPHP Mobile使用方法简明教程
2014/06/18 PHP
php cli配置文件问题分析
2015/10/15 PHP
PHP中Laravel 关联查询返回错误id的解决方法
2017/04/01 PHP
微信公众平台开发教程②微信端分享功能图文详解
2019/04/10 PHP
js类后台管理菜单类-MenuSwitch
2007/09/12 Javascript
jQuery UI AutoComplete 使用说明
2011/06/20 Javascript
分享10个原生JavaScript技巧
2015/04/20 Javascript
Bootstrap fileinput组件封装及使用详解
2017/03/10 Javascript
ES6中Proxy与Reflect实现重载(overload)的方法
2017/03/30 Javascript
基于layer.js实现收货地址弹框选择然后返回相应的地址信息
2017/05/26 Javascript
基于JavaScript 性能优化技巧心得(分享)
2017/12/11 Javascript
switchery按钮的使用方法
2017/12/18 Javascript
在Vue中使用Compass的方法
2018/03/02 Javascript
element ui table(表格)实现点击一行展开功能
2018/12/04 Javascript
Vue核心概念Getter的使用方法
2019/01/18 Javascript
解决layer.open后laydate失效的问题
2019/09/06 Javascript
浅谈React中组件逻辑复用的那些事儿
2020/05/21 Javascript
原生js实现购物车功能
2020/09/23 Javascript
python基于右递归解决八皇后问题的方法
2015/05/25 Python
Linux RedHat下安装Python2.7开发环境
2017/05/20 Python
Python使用plotly绘制数据图表的方法
2017/07/18 Python
python+django+sql学生信息管理后台开发
2018/01/11 Python
Python如何实现邮件功能
2020/05/27 Python
python 动态绘制爱心的示例
2020/09/27 Python
html5 canvas移动浏览器上实现图片压缩上传
2016/03/11 HTML / CSS
美国第一香水网站:Perfume.com
2017/01/23 全球购物
伦敦时尚生活的缩影:LN-CC
2017/01/24 全球购物
英国家喻户晓的家居商店:The Range
2019/03/25 全球购物
环境工程求职简历的自我评价范文
2013/10/24 职场文书
业务员岗位职责
2013/11/16 职场文书
3.15国际消费者权益日主题活动活动总结
2014/03/16 职场文书
委托公证书范本
2014/04/03 职场文书
家长通知书家长评语
2014/04/17 职场文书
师德演讲稿范文
2014/05/06 职场文书
创业计划书之酒店
2019/08/30 职场文书
Linux、ubuntu系统下查看显卡型号、显卡信息详解
2022/04/07 Servers