您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Greasy Fork is available in English.
防止自动翻译数学公式、表格、图表等复杂内容
以下是关于该代码的详细附加说明及操作说明,帮助更好地理解代码的目的、功能及其应用场景:
该代码的主要功能是禁止浏览器自动翻译网页中指定类型的内容,尤其是与数学公式、图表、表格等复杂内容相关的部分。这些内容通常会包含数学符号或专业术语,如果被自动翻译,可能会导致错误或失去原有的含义。为了避免这种情况,代码为相关元素及其子元素添加了translate="no"
属性,告诉浏览器不对这些元素进行自动翻译。
IIFE (立即调用函数表达式):
严格模式 ('use strict'
):
函数addTranslateNoToElements
:
translate="no"
属性,确保这些内容不会被自动翻译。NodeList
对象(即HTML元素的集合),并遍历这些元素及其子元素,逐一为其添加translate
属性。获取特定元素:
document.querySelectorAll
获取页面中包含以下class的元素:
.ltx_Math
, .ltx_equationgroup
, .ltx_equation
, .ltx_figure
, .ltx_table
.ltx_caption.ltx_centering
操作流程:
document.querySelectorAll
找到指定类型的元素,并通过addTranslateNoToElements
函数为每个找到的元素及其子元素设置translate="no"
属性。该代码适用于以下场景:
translate="no"
属性,可以精确控制哪些部分的内容不能被翻译。<head>
或<body>
部分中,确保页面加载时该代码立即执行并对指定的元素生效。 <script>
(function() {
// 脚本内容...
})();
</script>
document.querySelectorAll
中添加相应的class。例如,如果你还需要阻止code
块的翻译,可以将其添加到查询列表中: const mathElems = document.querySelectorAll('.ltx_Math, .ltx_equationgroup, .ltx_equation, .ltx_figure, .ltx_table, .code');
在CMS或博客系统中使用:
translate
属性。调试与扩展:
translate="no"
属性。右键点击页面的元素,选择“检查”,并查看元素的属性。确认是否已添加此属性。translate
属性,只需在代码中调整querySelectorAll
的选择器。保持元素选择器简洁:
性能考虑:
通过这种方式,可以有效避免页面中的关键内容被浏览器错误翻译,同时保持代码简洁、易扩展。