在 Chrome中不翻译代码
当前为
// ==UserScript==
// @name Chrome 不翻译代码
// @namespace https://github.com/wuuashen/UserScript
// @version 1.0
// @description 在 Chrome中不翻译代码
// @author wuuashen
// @include *
// @grant none
// @license MIT
// ==/UserScript==
(function() {
'use strict';
let count = 0
function injectCls(deferElm){
const elms = ['code', 'pre']
.reduce((acc, cur) => {
const nodeList = deferElm ? deferElm.querySelectorAll(cur) : document.querySelectorAll(cur);
return [...acc, ...nodeList];
}, [])
for (const elm of elms) {
count++
console.log(count, 123)
if(elm.classList.contains('notranslate') || elm.getAttribute('translate')) continue;
elm.classList.add('notranslate');
elm.setAttribute('translate', 'no');
}
}
document.addEventListener('DOMContentLoaded', () => { injectCls() })
let observer = new MutationObserver(mutations => {
for (const mutation of mutations) {
if(mutation.type !== 'childList') continue;
injectCls(mutation.target)
}
});
observer.observe(document.body, {childList: true, subtree: true});
setTimeout(() => { observer.disconnect() }, 3000)
})();