使命名的锚点书签在单击时始终显示在屏幕顶部

2023-11-22

我的标记如下:

<li><a href="#sheds_housing">Sheds &amp; Housing</a></li>
<div id="sheds_housing">
    <h1>sheds &amp; housing</h1>
    <img src="images/cattle/sheds_housing.png" width="150" height="150" alt="Sheds & Housing"
        title="Sheds & Housing" />
    <p>Text here</p>
</div>

创建指向页面某个部分的链接,以便当用户单击锚点时,会将他带到该部分。

无论如何,我是否可以确保当用户这样做时,内容始终显示在顶部,而没有任何可能出现在链接 div 上方文档的正常流程中的额外内容。

可以单独使用 CSS 来完成还是必须使用 JS/jQuery 来完成此操作,如果是,需要什么代码?

EDIT

之前我并不清楚;看到这个Fiddle。如果您单击前两个链接,您将被带到相应的部分,并且内容将显示在窗口顶部,但如果您单击最后一个链接,您将被带到相应的部分,但内容不会出现在窗口顶部和位于相应部分上方的内容都存在。


将 id“last_anchor”添加到列表中的最后一个链接,这将通过 jquery 实现。如何以及是否决定更改正文的边距取决于您......

$(document).ready(function(){
  $("#last_anchor").click(function(){
    var content_id = $(this).attr("href");
    var win_height = $(window).height();
    var content_height = $(content_id).height();
    var target_margin = win_height - content_height;
    $("body").css("margin-bottom", target_margin)
  });
});​
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使命名的锚点书签在单击时始终显示在屏幕顶部 的相关文章

  • React autoFocus 将光标设置为输入值的开头

    我有一个受控输入 最初显示一个值 我已将该输入设置为自动聚焦 但当我希望它出现在末尾时 光标出现在输入的开头 我知道这可能是因为自动对焦是在值之前添加的 但我不能 100 确定 在输入字段末尾完成光标初始化的最佳方法是什么 var Test
  • JavaScript推送函数中的动态变量

    我在 JavaScript 中使用推送功能 var chartData for var i 0 i lt 3 i chartData push date new Date year s mon s date s hr s min s sec
  • 如何使用角度材料在具有可扩展行的表格中创建嵌套垫表

    我有以下数据 id c9d5ab1a subdomain wing domain aircraft part id c9d5ab1a info mimetype application json info dependent parent
  • 如何在另一个自定义 Hook 中使用返回值的自定义 Hook?

    我正在使用 React native 其中有一个名为的自定义 HookuseUser使用以下方法从 AWS Amplify 获取用户信息Auth getUserInfro方法 然后获取返回对象的一部分并用它设置一个状态变量 我还有另一个名为
  • mongodb 聚合 - 累积字段的不同组值

    如果我有Player表格文件 name String score Int 我有Group文档 其中组代表玩家列表 groupName String players ObjectID 玩家可以属于多个组 我想做一个聚合Player文档 按以下
  • 如何始终将焦点保持在文本框中

    我创建了一个包含两个 div 的 HTML 页面 左侧的 div 页面的 90 是 ajax 结果的目标 右侧的 div 页面的 10 包含一个文本框 该页面的想法是在文本框中输入零件编号 通过条形码扫描仪 并显示与该零件编号匹配的绘图 显
  • 为什么我的交互式图像仅在 Internet Explorer 上出现故障?

    我的问题 我为自己制作了一个图像地图 交互式图像 它在 Chrome safari 和 Firefox 上完美运行 然而 当我在可怕的互联网浏览器上尝试它时 它真的很糟糕 这些小点应该扩展到更大的盒子中 在互联网浏览器上它要么不起作用 要么
  • 具有 100% 高度行和 Internet Explorer 9 的表格

    我有以下示例 div style height 150px background color AAAAFF div
  • 如何计算特定字符在字符串中出现的次数

    我正在尝试创建一个函数来查看数组中的任何字符是否在字符串中 如果是 有多少个 我尝试计算每一种模式 但是太多了 我尝试使用 Python 中的 in 运算符的替代方案 但效果不佳 function calc fit element var
  • 聆听 Angular 2 中的元素可见性

    我正在为我的网络应用程序使用 Bootstrap 和 Angular 2 v4 我想监听指令中的元素以了解可见性变化 我的元素有一个可以隐藏其子元素的父元素hidden sm up我需要在每次隐藏或显示时触发一个函数 div hidden
  • 使用 Javascript 设置 cookie [重复]

    这个问题在这里已经有答案了 我正在尝试构建我的第一个移动应用程序 它需要连接到我的 mysql 数据库并使用 json 返回数据 这很好 目前我有一个登录系统 一旦确定用户名和密码存在 它就会返回一条成功消息 对于下一步 我想在我的页面上使
  • 使用 CSS 的响应式图像

    我发现调整图像大小以使其具有响应能力很棘手 我正在开发一个 php 应用程序来自动将网站转换为响应式版本 我有点被图像困住了 我已经成功地为网站上的每个图像添加了一个包装类 并且可以很好地调整图像的大小 我的问题在于自然小于窗口的图像 例如
  • Rails 3.1+ 的 Jasmine 与 Mocha JavaScript 测试 [已关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我对茉莉花有经验并且非常喜欢它 有谁有 Jasmine 和 Mocha 的经验 特别是 Rails 的经验吗 我想知道是否值得转用 我已经在 J
  • Highcharts jQuery 渲染问题 - 所有浏览器

    我在尝试使用构建堆积柱形图时遇到了一个奇怪的问题高图表 http www highcharts com 当图表呈现时 在您调整浏览器大小之前 不会显示列无论如何 导致图表重绘 我认为 图表的其余部分显示 轴 标题等 但不显示列本身 我在 I
  • Webpack 4:如何使用 LESS 获取 CSS 源映射?

    多年来我一直在尝试让 CSS 源映射在 webpack 中工作 但没有成功 我不确定链条中哪里出了问题 我希望有人能指出我正确的方向 这是发生的事情 行号是错误的 实际上文件名也是错误的 main less只是包含一堆 import也就是说
  • css3按钮背景颜色无限过渡

    有没有办法仅使用 css3 使按钮的背景颜色从灰色渐变为蓝色 然后又回到灰色 一个很好的例子是默认操作按钮是可可 我知道这可以在 javascript 中完成 但我宁愿只使用 css 来完成此操作 您好 我已经通过 CSS3 动画制作了按钮
  • 什么是 WKWebView 中的 WKErrorDomain 错误 4

    fatal error LPWebView encounters an error Error Domain WKErrorDomain Code 4 A JavaScript exception occurred UserInfo 0x7
  • Flot 库将 y 轴设置为最小值 0 和最大值 24

    如何将 y 轴设置在 0 到 24 的范围内 这是我的代码 j plot j placeholder d1 xaxis mode time min new Date 2010 11 01 getTime max new Date 2011
  • 测量窗口偏移

    有没有一种方法可以测量 jQuery 中窗口的偏移量 以便我可以比较 固定 元素和相对定位元素的位置 我需要能够知道窗口滚动了多远 以便我可以使用该图来计算固定元素的高度 相对于视口顶部 和相对对象的高度 相对于顶部 之间的差异文件的内容
  • 没有输入的 jQuery 日期选择器

    我有一个相当复杂的网络应用程序 我想向其中添加一些日期选择 UI 我遇到的问题是我无法从文档中弄清楚如何真正控制日期选择器的出现方式和时间 不涉及任何表单元素 不 我不会添加秘密表单字段 因此简单的开箱即用方法根本行不通 我希望有人可以提供

随机推荐

  • SDL_GL_SwapBuffers() 间歇性缓慢

    我正在开发一个 sdl opengl 游戏 以供娱乐 平均而言 我获得了不错的 fps 但运动确实很不稳定 因为 SDL GL SwapBuffers 会随机花费相当长的时间来处理 加载纹理并写入缓冲区后 有时会花费超过 100 毫秒 我删
  • 使用@javax.validation.Valid时如何以正确的方式抛出自定义异常?

    使用时如何以正确的方式抛出自定义异常 javax validation Valid 我在用着 Valid在控制器中 以及 AssertTrue验证请求正文字段 public ResponseEntity
  • Oracle REGEXP_LIKE 和字边界

    我在使用 REGEXP LIKE 匹配单词边界时遇到问题 正如预期的那样 以下查询返回一行 select 1 from dual where regexp like DOES TEST WORK HERE TEST 但我也想匹配单词边界 因
  • C# .NET 标签中的多种颜色

    我正在寻找一种在单个 C NET 标签中显示多种颜色的方法 例如 标签显示一系列 csv 分隔值 每个值的颜色取决于它们所属的存储桶 我不想使用多个标签 因为值是可变长度的 并且我不想使用动态布局 有对此的原生支持吗 NET 中没有本机控件
  • git 中神秘消失的分支

    以下是我执行的一些 git 操作 如您所见 我创建了一个新分支 修改了我的文件 然后提交了更改 在换回另一个分支后 希望合并 我刚刚工作的分支消失了 有谁知道如何从fixed merge branch恢复文件 我吓坏了 1 9 2 whis
  • 分叉连接优化

    我想要的是 我想致力于 fork join 算法的优化 我所说的优化只是指计算最佳线程数 或者如果您愿意的话 计算SEQUENTIAL THRESHOLD 参见下面的代码 PSEUDOCODE Result solve Problem pr
  • 拥有 MSI 安装包的主要优势是什么?

    我以为这会在网络上的某个地方 但我无法用谷歌搜索它 考虑到创建 MSI 包的复杂性 与 NSIS InnoSetup 等相比 什么是一个令人信服的理由去经历所有这些混乱 使用 MSVS 蹩脚的安装项目向导 学习一个全新的语言 生态系统只是为
  • json 键作为数字

    我有一个 JSON 传递给脚本 我不知道 JSON 键 因为它们是动态的 实际上 它们是数字 这就是我得到的 var countries 223 142 143 222 23 26 25 24 170 1 2 我尝试像这样访问数据 var
  • random() 函数内部 - 它是如何实现的?

    我们通常使用 random 函数在 C 中创建随机数 使用 void srand 无符号整数种子 可以改善结果 因为它会根据种子的值生成随机数 谁能告诉我随机函数是如何实际实现的 Here是 GNU C 库的 random 函数中使用的算法
  • Git - 包超出允许的最大大小

    我正在处理大量的二进制文件 最近对本地 git 存储库进行更改后 我尝试将更改推送回远程 结果收到以下错误 remote fatal pack exceeds maximum allowed size 不幸的是我无法使用所描述的策略here
  • Python:生成具有趋势的随机时间序列数据(例如周期性、指数衰减等)

    我正在尝试生成一些具有趋势的随机时间序列 例如周期性 例如销售 指数下降 例如帖子上的 Facebook 点赞数 指数增长 例如比特币价格 普遍增加 股票行情 等 我可以生成普遍增加 减少时间序列如下 import numpy as np
  • TextView 具有不同的字体和样式?

    是否可以在同一文本中包含不同大小 字体类型或样式的文本TextView 像这样的东西 myLogin logout 您可以使用以下方法执行此操作 textView setText Html fromHtml b myLogin b i lo
  • UICollectionView:必须使用非零布局参数进行初始化

    I added UICollectionView通过代码 现在 应用程序崩溃并显示消息 UICollectionView must be initialized with a non nil layout parameter 你有什么想法来
  • 如何将适用于 Windows 的 PHP 5.3 扩展编译为 DLL?

    我目前正在重写一个PHP最初编写的扩展PHP 4 2 2 我的问题是让构建 编译过程生成一个 dll而不是将扩展编译到PHP核 环境是windows server 2003 我使用的是Visual Studio 2008 我使用 EXT S
  • JS:函数参数默认值

    在某些语言中 您可以为函数的参数设置默认值 function Foo arg1 50 arg2 default 你如何在 JavaScript 中做到这一点 在 JavaScript 中 任何未设置的内容都会被赋予值undefined 这意
  • fputs( _("") ) 下划线代表什么?

    我终于开始看一些 Linux 代码 我现在正在看ls c 在函数usage 在底部我发现了很多这样的说法 fputs List information about the FILEs the current directory by def
  • TFS 构建错误 - “指定的路径、文件名或两者都太长...”

    我正在编写构建过程模板的自定义活动 我在构建活动时遇到以下问题 gt XamlBuildTask error XC1043 Extension Microsoft Activities Build BeforeInitializeCompo
  • 通过 API 调用获取文件(R 和管道工)

    我使用管道工作为一些 R 函数的简单 Web API 服务 我想通过 R 函数提供一个文件 下载 在客户端 非常像Flask 在 python 中通过 send file 和 send from directory 执行此操作 I trie
  • 将源代码附加到 Jprofiler

    我刚开始使用 JProfiler 我正在对应用程序进行远程分析 当我单击任何对象的显示源时 它显示 在源路径中找不到源文件 因为远程计算机上只有二进制文件 有什么办法可以链接源代码吗 仅供参考 我可以访问我可以使用的代码 在 JProfil
  • 使命名的锚点书签在单击时始终显示在屏幕顶部

    我的标记如下 li a href sheds housing Sheds amp Housing a li div h1 sheds amp housing h1 img src images cattle sheds housing pn