jQuery:检测浏览器大小调整

2024-02-10

我正在使用 snipplr 的这个脚本,我该如何设置它,使容器 div 比 newWindowHeight 高度小 100px,比如 -100 之类的。

<script type="text/javascript" charset="utf-8">
$(document).ready(function(){

//If the User resizes the window, adjust the #container height
$(window).bind("resize", resizeWindow);
function resizeWindow( e ) {
    var newWindowHeight = $(window).height();
    $("#container").css("max-height", newWindowHeight );
}

});         
</script>

您发现的脚本使问题过于复杂。以下对我有用:

$(function(){

    // Cache reference to our container
    var $container = $("#container");

    // A function for updating max-height
    function updateMaxHeight () {
        $container.css("max-height", $(this).height() - 100);
    }

    // Call updateMaxHeight when browser resize event fires
    $(window).on("resize", updateMaxHeight);

});

一个警告是,调整浏览器大小时会多次调用 resize 事件;它不仅仅是在浏览器调整大小后调用。因此,您可能会调用回调函数数百次 - 这通常是一个坏主意。

解决方案是限制或消除事件。限制意味着您不会让回调在一段时间内被触发超过 x 次(也许每秒 5 次)。去抖动意味着您在上次调整大小事件过去一定时间后触发回调(等到调整大小事件后 500 毫秒)。

jQuery 目前不支持节流或反跳选项,尽管有插件。您可能使用过的其他流行库确实具有这些功能 http://underscorejs.org/#functions,例如下划线:

$(function(){

    // Cache reference to our container
    var $container = $("#container");

    // A function for updating max-height
    function updateMaxHeight () {
        $container.css("max-height", $(this).height() - 100);
    }

    // Version of updateMaxHeight that will run no more than once every 200ms
    var updateMaxHeightThrottled = _.throttle(updateMaxHeight, 200);

    // Call updateMaxHeightThrottled when browser resize event fires
    $(window).on("resize", updateMaxHeightThrottled);

});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jQuery:检测浏览器大小调整 的相关文章

  • 获取点击元素的 HTML 内容 jQuery

    我有以下 HTML
  • 在淘汰赛应用程序中使用 setInterval 进行轮询实现?

    我正在尝试使用 setInterval 实现简单的轮询机制 我有一个视图模型如下 define knockout jquery function ko function ViewModel var self this setInterval
  • 未捕获的类型错误:无法读取未定义的属性“toLowerCase”

    我收到此错误 它源自 jquery 框架 当我尝试加载准备好的文档上的选择列表时 出现此错误 我似乎无法找到为什么会出现此错误 它适用于更改事件 但在尝试手动执行该函数时出现错误 未捕获的类型错误 无法读取未定义的属性 toLowerCas
  • JavaScript 中的正则表达式用于验证十进制数字

    我想要 JavaScript 中的正则表达式来验证十进制数字 它最多只允许两位小数 例如 它应该允许10 89但不是10 899 它还应该只允许一个句点 例如 它应该允许10 89但不是10 8 9 尝试使用以下表达式 d d 0 2 如果
  • JQUERY 中用于加载 JQGRID 的选项卡

    我正在使用 jqgrid 制作网格 我想在我的应用程序中创建选项卡 单击选项卡应打开一个网格 选项卡的名称应显示在页面顶部 当我单击另一个选项卡时 它应该加载另一个网格 网格应该加载在同一页面上 并且选项卡也应该始终出现在页面上 我已经创建
  • 使用JQuery检查元素是否有边框?

    所以我正在玩 el css 尝试确定元素是否有边框 我用 css border style solid 设置边框 这是可行的 但实际上它设置了 4 种单独的样式 border right style border left style bo
  • 如何在每个组件完成加载后在 Angular 2 中运行 jquery 函数

    我已经尝试了所有生命周期挂钩 但无法实现所需的结果 我需要的结果是触发一个函数 该函数在加载每个元素 组件 后初始化用于单个页面上不同元素的许多 jquery 插件 假设你有这个结构 主页 滑块 小部件 产品旋转器 ETC 这些元素中的每一
  • Ajax JSON 数据和灯箱冲突

    我有一个带有灯箱插件的画廊设置光廊 http sachinchoolur github io lightGallery docs 该画廊与静态 HTML 完美配合 当我动态抓取 API 数据并尝试让灯箱处理这些项目时 问题就出现了 我似乎无
  • 使用 jquery 通配符检查 cookie 名称

    我有一个生成动态 cookie 的表单 例如 webform 62 1234356 62 1234356 可以是任意数字 我需要使用一些通配符检查来检查名称以 webform 开头的 cookie 是否存在 下面不起作用 if cookie
  • 限制 jQuery id 字符串吗?

    简而言之 我的问题是字符串在 jQuery 中作为可搜索 id 或可搜索内容有什么限制 更新 我得到了 ID 部分 但不是为什么我什至无法使用该字符串搜索 html 内容 对于任何愿意告诉我一个正则表达式来将模式从 MM dd yy HH
  • 将 jQuery 版本从 1.7.1 升级到 1.11.2

    在我当前的应用程序中 我使用的是 jQuery 版本 1 7 1 现在 我计划将jQuery版本升级到1 11 2 是否有任何补丁可以提供与现有应用程序的向后可比性 Thanks 尝试这个 http blog jquery com 2013
  • Jquery 两个字段的时间差(以小时为单位)

    我的表单中有两个字段 用户可以在其中选择输入时间 start time end time 我想在更改这些字段时重新计算另一个字段的值 我想做的是获取两次之间的小时数 例如 如果我的开始时间为 5 30 结束时间为 7 50 我想将结果 2
  • 禁用 Bootstrap 中的选项卡

    我正在尝试禁用引导程序中的选项卡 我一直在研究 但尚未找到解决方案 我已经尝试过这个 可以禁用 Bootstrap 中的选项卡吗 https stackoverflow com questions 9237314 can you disab
  • 如何设置视频文件的预览,从输入类型='文件'中选择

    在我的模块之一中 我需要从 input type file 浏览视频 之后我需要在开始上传之前显示选定的视频 我使用基本的 HTML 标签来显示 但它不起作用 这是代码 document on change file multi video
  • `attr('checked', false)` 不适用于 IE6

    正如标题所说 我无法获取 attr checked false 在 IE6 上工作 我正在克隆一些 HTML 然后在将新克隆的 HTML 分配给元素之前 我会运行它并取消选中新克隆部分中的所有复选框 这在除 IE 6 之外的所有浏览器中都可
  • Jquery获取选中的复选框

    您好 我想获取页面中选定复选框的列表 实际上我真正需要的是获取复选框旁边的元素的文本 该元素是一个 html 元素 li 代码如下 但它不起作用 这是我当前的 jQuery document ready function target cl
  • 如何删除除任何特定 id 之外的元素

    假设有一个父 id 其中包含许多元素 我想删除除一个元素之外的所有元素 ex parent id children not id n remove
  • 在特定页面上执行 javascript 的正确“Rails”方式

    我试图在特定页面上运行 javascript 而我唯一的解决方案似乎是反模式 我有controller js内部生成的assets javascripts 我在用着gem jquery turbolinks 我的代码类似于以下内容 docu
  • 从 HTTP 登录到 HTTPS

    我的网站默认使用 HTTP 我确实有一个启用 HTTPS 的证书 但只有其上的某些区域强制建立安全连接 登录是通过 Ajax 处理的 我想开始使用 SSL 即使请求来自 HTTP 我尝试强制请求的地址具有 HTTPS 并且它完美地回复 然而
  • 滚动顶部不符合预期

    Note 由于上次忘记奖励而重新开放赏金 A Woff 大师已经给出答案 我想在用户展开某一行时到达该行 这样当最后一个可见行展开时 用户不必向下滚动即可查看内容 I used example tbody on click td green

随机推荐

  • jQuery $(document).ready 在 Iron/Chrome 中损坏

    我使用 jQuery 和 jFancyTiles 编写了一个小图像幻灯片 可以在此处看到 http www netzwerkag at http www netzwerkag at 它在 Firefox 和 IE 中按预期工作 但在 Iro
  • Google Chart:如何绘制条形图的垂直线

    我正在尝试添加一条垂直线 以便当元素超过该值时可以在视觉上有所区别 Thanks
  • DatePickerDialog标题背景颜色

    我已经为 DatePickerDialog 背景设置了样式 它在 Nexus 5 Marshmallow 上的显示有所不同 我使用的风格是
  • 将 Antlr 语法树转换为有用的对象

    我目前正在考虑如何最好地获取使用 Antlr 生成的 AST 并将其转换为可以在我的程序中使用的有用对象 我语法的目的 除了学习之外 是创建一种可执行 运行时解释 语言 例如 我将如何获取属性子树并实例化特定的属性类 例如 以下代码用我的语
  • 有没有办法将 bash 中的输出重定向到具有不同过滤器的不同位置?

    如果我有一个过程a out我可以 a out grep foo查看由 foo 过滤的 a out 的标准输出 我也可以说 a out 2 gt 1 grep foo查看 foo 过滤的 err 和 out 随着tee命令我可以将标准输出发送
  • 从另一个类访问私有方法

    我有两个存储库类 RepositoryFactory and BaseRepository 在同一项目中实现不同的接口 这BaseRepository类有一个私有方法 现在另一个类中也需要该方法 具有相同的实现 我没有重复该方法以保持其私有
  • 带小数的负数的Javascript正则表达式

    我想测试这个输入 可选的负号 2 位数字 可选的 和一个可选的数字 如下所示 34 or 34 5333 or 34 53333 or 34 in JavaScript 这是我想出来的 但行不通 d 2 d 1 有人可以帮帮我吗 试试这个正
  • 使用 PHP 进行实时视频流传输

    我有一个 PHP AJAX MYSQL 聊天应用程序 我想将视频聊天添加到我的应用程序中 如何在 PHP 应用程序中创建用于实时视频会议 聊天的实时视频流 如果我想构建这样一个系统 我需要了解哪些关键术语 首先使用 PHP 是个好主意吗 有
  • 缩略图淡入淡出

    这是缩略图的标记 ul li a href videos img class thumb src images background thumb1 jpg alt a li li a href images background ibiza
  • Rails:构建捆绑器 gemfile 的选项

    我有一个宝石 必须使用一些选项来构建它 gem install pg with pg include Library PostgreSQL 9 0 include with pg lib Library PostgreSQL 9 0 lib
  • 我们如何将结果数据从 CodeIgniter 控制器传递到 AngularJS 控制器?

    我们如何将结果数据从 CodeIgniter 控制器传递到 AngularJS 控制器 在使用 jsonSuccess 代码的 CodeIgniter 控制器中 我将数据传递给 AngularJS 但我想传递不同的 3 个变量 我需要如何传
  • 当且仅当类模板会实例化时,变量模板才是正确的?

    假设我有一个类模板 A 它具有一个类型模板参数和一个主要特化 template
  • 如何在 React Query 中将 debounce 与 useQuery 一起使用?

    我正在使用 React Query 从 React 应用程序中的 API 获取数据 我想实现去抖以获得更好的性能 但我无法让它与 useQuery 一起使用 当我尝试将 API 调用包装在去抖函数中时 收到一条错误消息 查询函数必须返回定义
  • .NET / LINQ-SQL / ASP.NET 中的连接字符串地狱

    我有一个网络应用程序 包含以下内容 一个 Web 项目 带有包含连接字符串的 web config 文件 但 Web 项目中没有数据访问代码 使用 LINQ SQL 类向 Web 项目 UI 提供实体的数据访问项目 该项目有一个设置文件和一
  • 使用 Apps 脚本在 Google Drive 中创建 zip 文件

    我在 Google Drive 文件夹中有一个包含几个文件的文件夹 我想制作一个 Google Apps 脚本 它将压缩该文件夹中的所有文件并在同一文件夹中创建 zip 文件 我发现一个视频有Utilities zip 函数 但没有相关的
  • Span 和二维数组

    是否可以使用新的System Memory Span 结构体 https msdn microsoft com en us magazine mt814808 aspx使用二维数据数组 double testMulti 1 2 3 4 5
  • 使用 Awk 或 Sed 在特定行的末尾附加语句

    我有一个我命名的文件poscar1 cif 我想在此文件的特定行插入变量的内容 例如 线24 当前内容为 cell length a 我想添加变量的内容a 在我的函数中定义为a 5 3827 这样该行现在显示为 cell length a
  • 不停止 gdb 中的所有线程

    如果到达断点 或在 GDB shell 中按 Ctrl C GDB 通常会停止所有线程 我知道存在诸如调度程序锁定和调度多重之类的命令 但我认为不可能让已定义的线程在调试另一个线程时在后台运行 您可以使用set target async o
  • 将 grep 计数分配给变量

    如何分配结果 grep c some text tmp somePath 到变量中 这样我就可以回显它 bin bash some var grep c some text tmp somePath echo var value is so
  • jQuery:检测浏览器大小调整

    我正在使用 snipplr 的这个脚本 我该如何设置它 使容器 div 比 newWindowHeight 高度小 100px 比如 100 之类的