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中的deferred使用方法
Mar 27 jQuery
jquery写出PC端轮播图实例
Jan 26 jQuery
jquery动态添加以及遍历option并获取特定样式名称的option方法
Jan 29 jQuery
jQuery动态添加li标签并添加属性和绑定事件方法
Feb 24 jQuery
基于jQuery实现Ajax验证用户名是否可用实例
Mar 25 jQuery
基于jQuery.i18n实现web前端的国际化
May 04 jQuery
jQuery实现数字自动增加或者减少的动画效果示例
Dec 11 jQuery
浅谈JS和jQuery的区别
Mar 27 jQuery
jQuery实现的鼠标拖动画矩形框示例【可兼容IE8】
May 17 jQuery
jquery向后台提交数组的代码分析
Feb 20 jQuery
jquery轮播图插件使用方法详解
Jul 31 jQuery
jquery实现简单每周轮换的日历
Sep 10 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
二次元帅气男生排行榜,只想悄悄收藏系列
2020/03/04 日漫
PHP伪静态页面函数附使用方法
2008/06/20 PHP
PHP 类型转换函数intval
2009/06/20 PHP
php jquery 实现新闻标签分类与无刷新分页
2009/12/18 PHP
centos 5.6 升级php到5.3的方法
2011/05/14 PHP
Laravel 5框架学习之子视图和表单复用
2015/04/09 PHP
PHP处理CSV表格文件的常用操作方法总结
2016/07/01 PHP
laravel 解决Validator使用中出现的问题
2019/10/25 PHP
js玩一玩WSH吧
2007/02/23 Javascript
javascript RadioButtonList获取选中值
2009/04/09 Javascript
jQuery插件-jRating评分插件源码分析及使用方法
2012/12/28 Javascript
js实现点击注册按钮开始读秒倒计时的小例子
2013/05/11 Javascript
JavaScript:new 一个函数和直接调用函数的区别分析
2013/07/10 Javascript
JS正则验证邮箱的格式详细介绍
2013/11/19 Javascript
jquery的ajax跨域请求原理和示例
2014/05/08 Javascript
JavaScript实现页面5秒后自动跳转的方法
2015/04/16 Javascript
js实现支持手机滑动切换的轮播图片效果实例
2015/04/29 Javascript
基于javascript html5实现多文件上传
2016/03/03 Javascript
TableSort.js表格排序插件使用方法详解
2017/02/10 Javascript
原生js实现轮播图
2017/02/27 Javascript
easyUI下拉列表点击事件使用方法
2017/05/18 Javascript
vue+springboot前后端分离实现单点登录跨域问题解决方法
2018/01/30 Javascript
layui当点击文本框时弹出选择框,显示选择内容的例子
2019/09/02 Javascript
vue中实现回车键登录功能
2020/02/19 Javascript
[02:36]DOTA2亚洲邀请赛小组赛精彩集锦:奇迹哥卡尔秀翻全场
2017/03/28 DOTA
python爬虫入门教程--快速理解HTTP协议(一)
2017/05/25 Python
Python爬虫之模拟知乎登录的方法教程
2017/05/25 Python
Python实现重建二叉树的三种方法详解
2018/06/23 Python
详解pandas apply 并行处理的几种方法
2021/02/24 Python
CSS3 icon font完全指南(CSS3 font 会取代icon图标)
2013/01/06 HTML / CSS
整理的15个非常有用的 HTML5 开发教程和速查手册
2011/10/18 HTML / CSS
俄罗斯一家时尚女装商店:Charuel
2019/12/04 全球购物
物流仓储计划书
2014/01/10 职场文书
岳父生日宴会答谢词
2014/01/13 职场文书
销售人员职业生涯规划范文
2014/03/01 职场文书
天谕手游15杯全调酒配方和调酒券的获得方式
2022/04/06 其他游戏