如何为句子中的每个单词设置链接?

时间:2016-10-26 16:28:13

标签: javascript

解释我的问题的最好方法是使用示例:

https://www.priberam.pt/DLPO/casa

当你将每个单词悬停在主要内容中时,它指的是一个关于" hovered"的含义的链接。字。是否可以将每个单词配置为转换为链接,并将所有链接引用到其"含义"?

我相信这个函数可以将所有单词转换成其"页面的链接。没关系。

这是我们一直在尝试的:

var link = /wordToReplace/gi;
var urlLink = 'https://www.priberam.pt/DLPO/wordToBeReplaced';
var newLink = urlLink.replace(wordToBeReplaced, 'wordToReplace');

谢谢!

2 个答案:

答案 0 :(得分:0)

您需要编写一个函数,在将每个元素悬停在特定类上时,会看到标记内的html内容,然后搜索附加一个附加类的定义,该类将显示包含内容的信息层JS会注入(这个词的意思)。

  • 我会开始编写一些伪代码,以确定您的JS脚本为实现这一目标需要执行的所有步骤。
  • 然后我会设计HTML,以便每个单词都有一个span标签,其类与JS将要查找的类相同,以便触发此功能。您可以编写单独的JS函数将段落拆分为数组,然后在将数组内容放回页面之前在每个数组值上附加span标记。
  • 获得HTML后,我会按照您之前编写的伪代码编写悬停函数。
  • 最后,我将使用CSS注入JS注入DOM的代码来完成。

如果你对jQuery相当不错,你可以在几个小时内完成,但我个人只会使用vanilla JavaScript,因为这对你来说似乎是一种学习经验,但需要更长的时间。

答案 1 :(得分:0)

类似于以下示例的内容?



var textToConvert = 'Words to be converted to links';
var lookupUrl = 'http://www.merriam-webster.com/dictionary/';

var convertedText = textToConvert.replace(
  /(\w+)/g, 
  '<a href="' + lookupUrl + '$1">$1</a>'
);

document.getElementById('output').innerHTML = convertedText;
console.log(convertedText);
&#13;
<p id="output"></p>
&#13;
&#13;
&#13;