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中attr与prop的区别详解
May 27 jQuery
JQuery.dataTables表格插件添加跳转到指定页
Jun 09 jQuery
详谈表单格式化插件jquery.serializeJSON
Jun 23 jQuery
jquery实现用户登陆界面(示例讲解)
Sep 06 jQuery
jQuery+SpringMVC中的复选框选择与传值实例
Jan 08 jQuery
jQuery使用动画队列自定义动画操作示例
Jun 16 jQuery
jQuery实现表单动态添加数据并提交的方法
Jul 19 jQuery
使用jQuery给Table动态增加行、清空table的方法
Sep 05 jQuery
用jQuery将JavaScript对象转换为querystring查询字符串的方法
Nov 12 jQuery
详解jQuery获取特殊属性的值以及设置内容
Nov 14 jQuery
jQuery事件模型默认行为执行顺序及trigger()与 triggerHandler()比较实例分析
Apr 30 jQuery
jquery实现异步文件上传ajaxfileupload.js
Oct 23 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
PHP面向对象学习笔记之二 生成对象的设计模式
2012/10/06 PHP
php获取汉字首字母的函数
2013/11/07 PHP
PHP中多维数组的foreach遍历示例
2014/06/13 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
Javascript实例教程(19) 使用HoTMetal(6)
2006/12/23 Javascript
使用 JScript 创建 .exe 或 .dll 文件的方法
2011/07/13 Javascript
JavaScript 产生不重复的随机数三种实现思路
2012/12/13 Javascript
js hover 定时器(实例代码)
2013/11/12 Javascript
Javscript删除数组中指定元素并返回新数组
2014/03/06 Javascript
js实现精美的图片跟随鼠标效果实例
2015/05/16 Javascript
JavaScript对象学习小结
2015/09/02 Javascript
基于javascript如何传递特殊字符
2015/11/30 Javascript
JS模拟按钮点击功能的方法
2015/12/22 Javascript
javascript表单处理具体实现代码(表单、链接、按钮)
2016/05/07 Javascript
原生js实现移动端触摸轮播的示例代码
2017/12/22 Javascript
详解Webpack-dev-server的proxy用法
2018/09/08 Javascript
微信小程序select下拉框实现效果
2019/05/15 Javascript
JavaScript箭头函数中的this详解
2019/06/19 Javascript
深入了解Hybrid App技术的相关知识
2019/07/17 Javascript
JavaScript实现简单计算器功能
2019/12/19 Javascript
javascript设计模式 ? 解释器模式原理与用法实例分析
2020/04/17 Javascript
vue 使用async写数字动态加载效果案例
2020/07/18 Javascript
[45:06]完美世界DOTA2联赛PWL S2 Magma vs InkIce 第二场 11.28
2020/12/02 DOTA
python实现比较两段文本不同之处的方法
2015/05/30 Python
Python实现查找系统盘中需要找的字符
2015/07/14 Python
python+mongodb数据抓取详细介绍
2017/10/25 Python
python web基础之加载静态文件实例
2018/03/20 Python
在python中使用nohup命令说明
2020/04/16 Python
Django vue前后端分离整合过程解析
2020/11/20 Python
CSS3 box-shadow属性实例详解
2020/06/19 HTML / CSS
MATCHESFASHION.COM法国官网:英国奢侈品零售商
2018/01/04 全球购物
Black Halo官方网站:购买连衣裙、礼服和连体裤
2018/06/13 全球购物
反腐倡廉标语
2014/06/24 职场文书
应急管理工作总结2015
2015/05/04 职场文书
结婚当天新郎保证书
2015/05/08 职场文书
高效课堂教学反思
2016/02/24 职场文书