如何像谷歌翻译一样在 HTML 中替换所有文本?

如何像谷歌翻译一样在 html 中替换所有文本?

如何像谷歌翻译那样替换 html 中的所有文本

要像谷歌翻译页面一样翻译 html 中的文本,同时保持 html 代码不变,可以按照以下步骤操作:

获取所有有内容的文本节点

可以使用 array.from($$(‘*’)) 遍历所有 html 元素,并使用 filter 筛选出具有文本节点(nodename == ‘#text’)且文本内容不为空(v.textcontent.trim())的元素。

const textnodes = array.from($$('*')).filter(v => array.from(v.childnodes).filter(v => v.nodename == "#text" && v.textcontent.trim())?.length);

遍历节点内容并替换

获取到包含文本内容的节点后,可以遍历这些节点并执行翻译操作,然后将翻译后的文本替换回原始节点中。

立即学习“前端免费学习笔记(深入)”;

示例代码

完整的代码示例如下:

Array.from($$('*')).filter(v => Array.from(v.childNodes).filter(v => v.nodeName == "#text" && v.textContent.trim())?.length).forEach(v => {  // 执行翻译操作  const translatedText = translate(v.textContent);  // 替换回原始节点  v.textContent = translatedText;});

以上就是如何像谷歌翻译一样在 HTML 中替换所有文本?的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1282497.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月10日 23:05:33
下一篇 2025年12月10日 23:05:48

相关推荐

发表回复

登录后才能评论
关注微信