我正在寻找一种使文本中的单词可点击的解决方案,我曾考虑过将文本拆分为单词数组并为每个单词创建一个btn ...但是这种解决方案的效果不佳...有人知道?文本是:
const paragraph = 'Emma Woodhouse, handsome, clever, and rich, with a comfortable home and happy disposition, seemed to unite some of the best blessings of existence; and had lived nearly twenty-one years in the world with very little to distress or vex her.'
谢谢!
假设您要将这些单词放在html页面中,最好的选择是将每个单词都包装在<span>
元素中,并将点击处理程序附加到<span>
。
例如,
<span>Emma</span> <span>Woodhouse</span>...
然后是>>
Array.from(document.querySelectorAll('span')).forEach(span => { span.addEventListener('click', ...) })
当然,使用React或其他框架或lib可能会有不同的首选方式。
[还有其他一些实现方法,例如,在document
上实现点击处理程序以测试元素类型。这样,您只有一个用于所有元素的处理程序,而没有一个用于[[each
span
Array.from()
),遍历句子并将每个字符呈现为可单独单击的元素之外,没有其他更好的方法来实现上述目的。