Hyperlink 链接到网页的特定部分
如何在另一个我无法控制的网站上创建指向长网页部分的链接 我想你可以在我链接的末尾使用#部分页面的变体。有什么建议吗?只需添加一个Hyperlink 链接到网页的特定部分,hyperlink,Hyperlink,如何在另一个我无法控制的网站上创建指向长网页部分的链接 我想你可以在我链接的末尾使用#部分页面的变体。有什么建议吗?只需添加一个,后跟的ID,使用以下格式创建一个“跳转链接”: http://www.somesite.com/somepage#anchor 其中anchor是您希望在该页面上链接到的元素的id。使用浏览器开发工具/视图源查找要链接到的图元的id 如果该元素没有id,而您无法控制该站点,则您无法控制该站点。只有该站点在页面中声明了锚,才有可能做到这一点。 这是通过给一个标记a来完
,后跟
的ID,使用以下格式创建一个“跳转链接”:
http://www.somesite.com/somepage#anchor
其中anchor是您希望在该页面上链接到的元素的id。使用浏览器开发工具/视图源查找要链接到的图元的id
如果该元素没有id,而您无法控制该站点,则您无法控制该站点。只有该站点在页面中声明了锚,才有可能做到这一点。 这是通过给一个标记a来完成的,所以请查找任何靠近您想要链接的位置的标记 然后语法将是
<a href="page.html#anchor">text</a>
如果目标页面位于同一域中(即与您的页面共享相同的源代码),并且您不介意创建新选项卡(1),您可以(ab)使用一些JavaScript:
琐事:
var w = window.open('some URL of the same origin');
w.onload = function(){
// do whatever you want with `this.document`, like
this.document.querySelecotor('footer').scrollIntoView()
}
您现在可以尝试的此类“利用”的工作示例可能是:
javascript:(函数(url,sel,w,el){w=window.open(url);w.addEventListener('load',function(){w.setTimeout(function(){el=w.document.querySelector(sel);el.scrollIntoView();el.style.backgroundColor='red'},1000)})('https://stackoverflow.com/questions/45014240/link-to-a-specific-spot-on-a-page-i-cant-edit“,”页脚“
如果您将其输入位置栏(请注意,当从剪贴板粘贴时,Chrome会删除javascript:
前缀)或将其作为此页面上任何链接的href
值(使用开发人员工具)并单击它,您将获得另一个(重复的)SO问题页面,该页面将滚动到页脚并将页脚涂成红色。(添加延迟,作为加载ajax内容后向下推页脚的解决方法。)
注释
- 在当前的Chrome和Firefox中测试,通常应该可以工作,因为它基于定义的标准行为
- 无法在此处的交互式代码段中进行说明,因为它们与页面原点隔离
- (1)
似乎正在破坏window.open(url,“'u self”)
事件;基本上使load
的行为与正常的窗口打开。open
单击导航一样;还没有更多的研究a href=“”
div class=“page container drawer page content”id“PageContainer”
注意,这是整个引用部分的格式,而不是单个文本或图像。要做到这一点,您需要找到与目标块相关的同一段代码。例如,dv id=“your block id”
无论如何,我刚刚读了这篇文章,突然想到了一个想法,如果你是Shopify用户,并且想这样做,那么这与前面所说的差不多。
而不是
> http://url.to.site/index.html#target
你会把
> http://storedomain.com/target
> http://mystore-classifier.com/pagename/#BlockID
例如,我正在设置一个免责声明页面,其中包含指向我主页上的时事通讯注册和购物区的链接,因此我插入https://mystore-classifier.com/#shopify-我的超链接的第1528945200235节
。
请注意,-分类器仅供我内部使用,不适用于您。这只是为了让我能跟踪我的店铺。
如果你想链接到你的主页以外的东西,你可以
> http://storedomain.com/target
> http://mystore-classifier.com/pagename/#BlockID
我希望有人觉得这很有用,如果我的解释有问题,请告诉我,因为我不是HTML程序员,我的语言是C# 即将推出的Chrome“滚动到文本”功能正是您想要的
基本上,您可以在URL的末尾添加#targetText=
,浏览器将滚动到目标文本,并在加载页面后将其高亮显示
它是在我的办公桌上运行的Chrome版本中,但目前必须手动启用。据推测,它将很快在Chrome产品版本中默认启用,其他浏览器也将随之启用,所以现在就开始添加链接,然后它将开始工作 如果在Atlassian Confluence中需要此链接,这不是很简单,但是他们在这里记录了它:
name
属性仅在
元素上支持此属性,它在HTML5中已经过时了。对我来说,它对元素的关注度太低了。有人发生过同样的事情吗?如果这个ID被多次使用呢?我遇到一个MS站点,该站点多次使用id
的id
,其中的某个字符串几次成为新字符串。@kayleeFrye\u onDeck如果存在多个id
,则您的HTML无效。根据定义,id
是该标记所独有的,感谢您的澄清,@KolobCanyon!:)对于一个只使用一次的类,有没有办法做到这一点?也许我太天真了,但当我不小心做了www.site.com/page/#target
时,它失败了。确保url末尾没有/
。如果网页的特定部分没有与之关联的id怎么办?那么您需要将id添加到元素中我可以将id添加到internet网页上的标记中吗?不,如果您想对其他网站执行此操作,您可以尝试创建一个自定义JS bookmarklet以滚动到您想要滚动到的部分。如果未设置ID,则无法使锚定链接正常工作。是否可以链接到上面指定的内容以执行此操作?我以前从未做过类似的事情。嗯,它没有滚动到底部,底部也不是红色的……而且它也没有打开新窗口,我支持