gpt4 book ai didi

javascript - 将某个单词(或单词序列)的每次出现自动超链接到预定义的 URL(无歧义);但不显示完整网址

转载 作者:行者123 更新时间:2023-11-29 21:52:26 24 4
gpt4 key购买 nike

类似于: Search For Words, Replace With Links .但是,我宁愿不让完整的超链接的 URL 可见,而只是让最终用户看到超链接的外观。 --- 我也不知道如何使用 replace()-JS 函数,就像在以下帖子中使用的那样:How to replace all occurrences of a string in JavaScript? ,对于同一个特定问题。 --- 也类似于 JS 问题:Link terms on page to Wikipedia articles in pure JavaScript ,但我想那里给出的答案无法预先区分模棱两可的术语。

如何将每次出现的单个单词单词序列自动链接到它们各自的预定义 URL?

在 (a) 某些 HTML 页面中,是否可以:

  • 手动预定义;或自动(参见: Wiki-api )单个单词及其各自(即维基百科)文章的列表;
  • 这样文档中的每个(这样耦合的)单词都会自动接收指向相应(即维基百科)文章的预定义链接。

示例:

(1) 无论出现 cell 这个词,这个词都应该收到链接:...wiki/cell , 给出以下结果:cell只是一个cell .


所以,我真正想要的是模仿任何 Wikipedia-article 中实际发生的事情。本身(虽然我不知道这是否是自动化的)。

如有任何帮助,我们将不胜感激。

最佳答案

从您链接的问题开始,修改它以实现您的目标非常容易。所以首先假设我们有一个像这样的短语和链接列表:

var words = [
{ word: 'foo', link: 'http://www.something.com' },
{ word: 'Something Else', link: 'http://www.something.com/else' ]
];

我们可以迭代该列表以替换文档中的任何匹配项,但包括我们正在插入的文本中搜索的单词。我也为此添加了一个工具提示,以展示您还可以做什么的示例。

$(function() {
$.each(words,
function() {
var searchWord = this.word;
var link = this.link;
$('body:contains("' + searchWord + '")').each(function() {
var newHtml = $(this).html().replace(searchWord,
'<a class="wikilink" title="here is a link to Wikipedia" href="'+link+'">' + searchWord + '</a>');
$(this).html(newHtml);
});
}
);
});

还有一个工作示例:http://jsfiddle.net/yxhk1fcd/10/

关于javascript - 将某个单词(或单词序列)的每次出现自动超链接到预定义的 URL(无歧义);但不显示完整网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28398112/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com