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,Angular实现登录界面验证码详解
Apr 27 jQuery
Jquery EasyUI $.Parser
Jun 02 jQuery
jQuery实现菜单栏导航效果
Aug 15 jQuery
jQuery实现锚点向下平滑滚动特效示例
Aug 29 jQuery
jQuery与vue实现拖动验证码功能
Jan 30 jQuery
vue+jquery+lodash实现滑动时顶部悬浮固定效果
Apr 28 jQuery
JQuery实现ul中添加LI和删除指定的Li元素功能完整示例
Oct 16 jQuery
jquery 键盘事件 keypress() keydown() keyup()用法总结
Oct 23 jQuery
使用jQuery实现掷骰子游戏
Oct 24 jQuery
jQuery开发仿QQ版音乐播放器
Jul 10 jQuery
Jquery $.map使用方法实例详解
Sep 01 jQuery
jQuery实现购物车全功能
Jan 11 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
CI框架支持$_GET的两种实现方法
2016/05/18 PHP
PHP设计模式之适配器模式定义与用法详解
2018/04/03 PHP
node.js中的events.emitter.removeListener方法使用说明
2014/12/10 Javascript
jquery图片切换插件
2015/03/16 Javascript
JavaScript学习笔记之数组的增、删、改、查
2016/03/23 Javascript
学习Javascript闭包(Closure)知识
2016/08/07 Javascript
javascript入门之数组[新手必看]
2016/11/21 Javascript
原生JS京东轮播图代码
2017/03/22 Javascript
详解Node.js 命令行程序开发教程
2017/06/07 Javascript
简单谈谈axios中的get,post方法
2017/06/25 Javascript
Angularjs实现上传图片预览功能
2017/09/01 Javascript
vue.js轮播图组件使用方法详解
2018/07/03 Javascript
layui实现文件或图片上传记录
2018/08/28 Javascript
小程序实现五星点评效果
2018/11/03 Javascript
微信小程序获取用户信息的两种方法wx.getUserInfo与open-data实例分析
2019/05/03 Javascript
javascript 高级语法之继承的基本使用方法示例
2019/11/11 Javascript
vue中keep-alive内置组件缓存的实例代码
2020/04/16 Javascript
React冒泡和阻止冒泡的应用详解
2020/08/18 Javascript
[15:20]DOTA2亚洲邀请赛总决赛开幕式表演:羽泉献唱
2017/04/05 DOTA
python实现将html表格转换成CSV文件的方法
2015/06/28 Python
Python 对输入的数字进行排序的方法
2018/06/23 Python
python 根据时间来生成唯一的字符串方法
2019/01/14 Python
Python3调用百度AI识别图片中的文字功能示例【测试可用】
2019/03/13 Python
Python实现 版本号对比功能的实例代码
2019/04/18 Python
python实战串口助手_解决8串口多个发送的问题
2019/06/12 Python
python使用Qt界面以及逻辑实现方法
2019/07/10 Python
python3注册全局热键的实现
2020/03/22 Python
python3.4中清屏的处理方法
2020/07/06 Python
python使用matplotlib绘制折线图的示例代码
2020/09/22 Python
纯CSS3+DIV实现小三角形边框效果的示例代码
2020/08/03 HTML / CSS
世界顶级足球门票网站:Live Football Tickets
2017/10/14 全球购物
澳大利亚最大的百货公司:Myer
2018/12/21 全球购物
高级护理专业毕业生推荐信
2013/12/25 职场文书
2015年社区教育工作总结
2015/05/13 职场文书
工伤事故赔偿协议书
2015/08/06 职场文书
2016继续教育培训学习心得体会
2016/01/19 职场文书