微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

HTML – 有没有办法在中搜索可搜索的文本?

在大多数浏览器中使用Ctrl-F将允许您搜索文本,但仅在文本区域中搜索.我想搜索哪些应该是可访问区域的文本,这些区域不一定是文本渲染区域,例如< map ...>< area title =“searchable text”/>< / map>和< img alt =“可搜索文字”/>.是否有可以满足我要求的浏览器或插件?这个东西在这里是可访问性的,但它似乎并非真正可访问(除了鼠标悬停,这也不是所有可访问的).

注意

所需的答案不会使用与视图分离的内容.即搜索代码不是一个选项,因为这很难阅读(尤其是在复杂的页面上),并且没有显示信息在呈现页面上的位置.

解决方法

Is there a browser or addon that will do what I’m asking for?

哦,是的. Lynx浏览器做到了.
但我想这不是解决方案;-)

如果您的问题是这样,则无法覆盖CTRL F在浏览器中执行的操作.

您可以在网站内设计自定义插件,也可以为浏览器设计插件.这很容易……但需要其他捷径.

如果你的主要问题是根据他们的alt或title属性内容定位标签,这在javascript中很容易:

var search='enter image';
 var nodes=document.querySelectorAll("[alt*='"+search+"'],[title*='"+search+"']");

然后,您可以使用jquery或您想要的内容突出显示匹配的节点.

for (i in nodes) {
   nodes[i].className+=' resultHighlighted';
}

并滚动到第一个结果:
节点[0] .scrollIntoView();

如果您打算创建一个浏览器插件,您可以创建自定义书签或自定义插件,并将快捷方式与此书签相关联(请参阅https://github.com/iSunilSV/Chrome-Bookmark-Shortcut)

一个简单的书签,通过title或alt属性查找第一个匹配并滚动到它将是这样的:

javascript:text=prompt("search inside alt or title attribute");
document.querySelector("[alt*='"+text+"'],[title*='"+text+"']").scrollIntoView();

原文地址:https://www.jb51.cc/html/226794.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐