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插件FusionWidgets实现的Cylinder图效果示例【附demo源码】
Mar 23 jQuery
jQuery操作之效果详解
May 19 jQuery
jQuery表单验证之密码确认
May 22 jQuery
JavaScript之事件委托实例(附原生js和jQuery代码)
Jul 22 jQuery
认识jQuery的Promise的具体使用方法
Oct 10 jQuery
基于jQuery Ajax实现下拉框无刷新联动
Dec 06 jQuery
jquery点击回车键实现登录效果并默认焦点的方法
Mar 09 jQuery
浅谈jquery fullpage 插件增加头部和版权的方法
Mar 20 jQuery
jquery分页插件pagination使用教程
Oct 23 jQuery
jquery实现商品sku多属性选择功能(商品详情页)
Dec 20 jQuery
jQuery+PHP+Ajax实现动态数字统计展示功能
Dec 25 jQuery
Jquery $.map使用方法实例详解
Sep 01 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生成二维码时出现中文乱码的解决方法
2014/12/18 PHP
ThinkPHP中使用Ueditor富文本编辑器
2015/09/02 PHP
Yii2针对游客、用户防范规则和限制的解决方法分析
2016/10/08 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
ext for eclipse插件安装方法
2008/04/27 Javascript
一个可绑定数据源的jQuery数据表格插件
2010/07/17 Javascript
JS定时器实例
2013/04/17 Javascript
点击按钮自动加关注的代码(sina微博/QQ空间/人人网/腾讯微博)
2014/01/02 Javascript
js实现图片漂浮效果的方法
2015/03/02 Javascript
jQuery()方法的第二个参数详解
2015/04/29 Javascript
基于ajax与msmq技术的消息推送功能实现代码
2016/12/26 Javascript
JavaScript实现的select点菜功能示例
2017/01/16 Javascript
JS中如何实现Laravel的route函数详解
2017/02/12 Javascript
form表单序列化详解(推荐)
2017/08/15 Javascript
小程序实现授权登陆的解决方案
2018/12/02 Javascript
手把手15分钟搭一个企业级脚手架
2019/09/16 Javascript
Vue解析带html标签的字符串为dom的实例
2019/11/13 Javascript
vant实现购物车功能
2020/06/29 Javascript
Java 生成随机字符的示例代码
2021/01/13 Javascript
JavaScript如何实现防止重复的网络请求的示例
2021/01/28 Javascript
python 快速排序代码
2009/11/23 Python
编程语言Python的发展史
2014/09/26 Python
python实现上传样本到virustotal并查询扫描信息的方法
2014/10/05 Python
给Python的Django框架下搭建的BLOG添加RSS功能的教程
2015/04/08 Python
使用基于Python的Tornado框架的HTTP客户端的教程
2015/04/24 Python
Python实现简单多线程任务队列
2016/02/27 Python
python利用有道翻译实现&quot;语言翻译器&quot;的功能实例
2017/11/14 Python
python命令行工具Click快速掌握
2019/07/04 Python
python实现基于朴素贝叶斯的垃圾分类算法
2019/07/09 Python
Python异常原理及异常捕捉实现过程解析
2020/03/25 Python
PHP如何去执行一个SQL语句
2016/03/05 面试题
课内比教学心得体会
2014/09/09 职场文书
2015元旦晚会主持人开场白+结束语
2014/12/14 职场文书
工会文体活动总结
2015/05/07 职场文书
高中团支书竞选稿
2015/11/21 职场文书
win10键盘驱动怎么修复?Win10键盘驱动修复小技巧
2022/04/06 数码科技