确定元素是在页面折叠上方还是下方

2024-05-17

我有一些页面有多个输入框,用户可以在其中输入文本。在单击“下一步”按钮之前,需要填写其中一些内容。我弹出验证错误供用户查看,但是如果问题不在页面上,我希望页面滚动到它,而不是他们必须搜索丢失/错误的字段。

我有一个滚动到位,但我无法确定要滚动到哪个元素。例如,如果输入位于页面折叠上方,我想滚动到标签,以便他们可以看到错误和输入。但如果它位于首屏下方,我想选择输入,以便将其显示在首屏上方。这有任何意义吗?

我想我真正要问的是,有没有办法确定元素在页面上的位置。如果它位于首屏上方,则滚动到标签,但如果它位于首屏下方,则滚动到输入?

现在我只是滚动到错误的输入字段。

$(".container-content").mCustomScrollbar("scrollTo",$('.container-content').find('input.error:first')); //Yes I am using a plugin for the scroll

if I just scroll to the label then it looks like this. enter image description here


您可以使用此功能:Jsfiddle http://jsfiddle.net/azjbrork/

function isElementInViewport (el) {
    var rect = el[0].getBoundingClientRect();
    return (rect.top>-1 && rect.bottom <= $(window).height());
}

最初发布Here https://stackoverflow.com/questions/123999/how-to-tell-if-a-dom-element-is-visible-in-the-current-viewport/7557433#7557433

New api只需 11 个额外步骤即可使用,哈哈https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#Browser_compatibility https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API#Browser_compatibility

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

确定元素是在页面折叠上方还是下方 的相关文章

随机推荐

  • 在docker容器中运行Jenkins有什么优势

    我发现了很多关于如何运行你的博客Jenkins in Docker但没有人真正解释这样做的好处 这是我发现的唯一原因 使用 Docker 的理由 https twasink net 2016 08 01 setting up a jenki
  • java异常处理策略[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在azure pipelines yaml脚本中使用运行时表达式

    我试图通过从天蓝色管道传递变量来执行脚本 这是我的简单测试管道 trigger master pool vmImage windows latest variables major 1 2 minor counter variables m
  • Kotlin 未解决的参考:CLI 上 gradle 的 println

    放一个printlnkotlin 函数返回之前的语句会崩溃 堆栈跟踪 thufir dur NetBeansProjects kotlin thufir dur NetBeansProjects kotlin gradle clean bu
  • 从正则表达式对象中提取允许字符串的最大长度

    一旦加载到 C 中 是否可以从正则表达式模式中提取允许的字符串的最大长度Regex object 如果我有一个正则表达式字符串定义为 A Z0 9 0 20 我可以使用字符串操作来获取最大允许长度20 但是 有没有一种方法可以更轻松地实现这
  • 根据 Pandas 中的列表对多列进行排序

    感谢有关如何根据 pandas 中的倍数列表对给定多列进行排序的任何提示 如下所示 import pandas as pd sort a a d e sort b s1 s3 s6 sort c t1 t2 t3 df pd DataFra
  • 如何根据运行的 jar 的结果让我的 ant 任务通过或失败?

    我正在运行 CrossCheck 无浏览器 js 单元测试 作为 ant 脚本的一部分 如果 CrossCheck 测试失败 我希望 ant 报告失败 这是 build xml 中的相关部分
  • 使用PHP套接字发送和接收数据

    我正在尝试通过 PHP 套接字发送和接收数据 一切正常 但是当我尝试发送数据时 PHP 不发送任何内容 Wireshark 告诉我发送的数据长度为 0 我正在使用这段代码
  • 如何更新 pl/sql 中嵌套表的列? [复制]

    这个问题在这里已经有答案了 我正在尝试在表中创建一个可以存储多个值的列 如下所示 我有一个学生id std和一个名为marks可以采用几个值 例如2 3 4 我想更新此列表以添加另一个标记2 3 4 5但我不知道怎么做 我如何更新专栏mar
  • 加快 ImageView 中的缩放功能

    我目前正在处理非常大的图像 7 10mb 由于多种原因无法调整大小或压缩 现在 我们的想法是在自定义 ImageView 中显示它们 使用户能够进行双击缩放 捏合缩放等 我使用这个库来完成这项工作 https github com Mike
  • Android 改变 ImageView / Bitmap 的颜色

    我需要找到一种方法来改变 Android 中位图的颜色 我需要在我的应用程序中平滑地替换 更改椭圆形图像的颜色 具体取决于int价值 我需要类似的东西myValue 5比改变我的图像的颜色RED and if myValue 322将颜色更
  • 如何动态突出显示网页上的字符串?

    我想创建带有 url 的页面 例如 http xyzcorp schedules 2015Aug24 Aug28 Jim Hawkins http xyzcorp schedules 2015Aug24 Aug28 Billy Bones
  • 如何在android中的操作栏中创建Edittext?

    我们可以在操作栏中使用编辑文本吗 在阅读了 Google 中的大量资源后 我找不到如何在操作栏中创建编辑文本 谁能告诉我该怎么做 您可以设置自定义View为了ActionBar像这样 getActionBar setCustomView R
  • IIS 8.5 MVC5 客户端缓存被忽略

    TL DR 我希望服务器 IIS 8 5 返回 304 未针对 CSS 和 JS 包进行修改 我无法让 IIS 8 5 遵守 web config 中的 clientCache 设置 无论我做什么 我似乎都无法让它缓存静态内容 这是VS20
  • 搜索深度嵌套数组以更新对象

    我有一个深层嵌套的数据结构 我有兴趣匹配数组 和数组数组 中的某个值 然后将一些数据推送到随附的数组中 例如以下是我的数组colors并伴随着的是更多颜色数组可能存在也可能不存在 var myData color green moreCol
  • log4j.xml放置在哪里

    当尝试查找其 xml 配置文件时 我们如何指定 log4j 必须查看的位置 默认情况下 log4j 似乎会查找类文件夹的根目录 我可以说使用调试 log4j 功能并从 IDE 运行我的应用程序 但是 我的 jar 中不再有任何类文件夹 lo
  • 将 JSON 反序列化为表

    我需要根据通过 API 接收的数据填充 ABAP 中的表 我正在使用以下 ABAP 函数从 json 填充现有的 ABAP 表 JSON 是正确的 表中包含相应的表 ui2 cl json gt deserialize EXPORTING
  • 在 Woocommerce 购物车中设置最小小计金额

    我正在尝试将最低订单金额设置为 25 美元 到目前为止 我找到了这段代码 如果未达到最低限度 它似乎可以阻止结账 但它使用的小计包含税费 我需要在总计中排除税费 add action woocommerce checkout process
  • Ilnumerics Ilpanel 在 winform 中编译成 dll 并加载到 matlab 时不激活

    我想将 Visual studio 2012 中用 C 编写的 winform 编译为 dll 然后将其加载到 matlab 2013a 中 然后 我想使用 matlab net 接口与 winform 进行交互 侦听其事件并通过一组预定义
  • 确定元素是在页面折叠上方还是下方

    我有一些页面有多个输入框 用户可以在其中输入文本 在单击 下一步 按钮之前 需要填写其中一些内容 我弹出验证错误供用户查看 但是如果问题不在页面上 我希望页面滚动到它 而不是他们必须搜索丢失 错误的字段 我有一个滚动到位 但我无法确定要滚动