1

是否有一种本地方法可以使用http://site.tld/page.html#select(h3:nth(5))来定位页面上的第 n 个元素

我可以想出很多为什么不能接受它作为 HTML 中的功能存在的原因,但这不是这里的问题。

因此,如果无法在 HTML 中实现,是否可以使用 Chrome 或 Firefox 等特定浏览器中的某些功能构建?

有时,我想将人们指向页面的某个部分,但是当我浏览代码时,没有 id="paragraph4" 甚至没有 a,我发现不能做这样的事情非常令人沮丧。

4

4 回答 4

1

这不会真正回答你的问题(我认为),但我相信只有浏览器扩展才能实现这种行为,即消费者端。

该扩展还可以帮助您选择您想要的部分并生成一个您可以收藏或共享的特制 URL。

但是,要与其他人共享此功能,您必须让他们也安装扩展程序(以及针对不同的浏览器)。

于 2012-05-03T07:20:16.110 回答
1

https://en.wikipedia.org/wiki/Fragment_identifier#Proposals 引用...

“在 Firefox 5 之前,Firefox 支持 XPath 链接,例如 #xpath:/html/body/div[3],它可以与诸如http://antimatter15.com/wp/2009/11/xpath之类的书签一起使用-bookmark-bookmarklet/在缺少正确 ID 的 HTML 文档中进行链接。此功能已作为 Mozilla 错误 #457102 中代码清理的一部分被删除

(由于stackoverflow不希望我发布3个链接,因此从引用中删除了错误链接)

于 2016-09-09T14:09:49.753 回答
0

您需要document.location.hash在 JavaScript/jQuery 中抓取、解析值并执行适当的代码。

于 2012-05-02T17:22:20.247 回答
0

8年后回答我自己的问题:

WICG 为Text Fragments提供了一个草稿,现在您可以通过将以下内容添加到哈希中来链接到页面上的文本,就好像您正在搜索它一样

#:~:text=<Text To Link to>

工作示例Chrome Version 81.0.4044.138

单击此链接应重新加载页面并突出显示链接的文本

于 2020-05-11T00:08:53.853 回答