我正在尝试使用Google googleSectionalElementInit()函数将网页中的一种特定元素内容从原始语言自动翻译成英语。
在网上找到一些建议之后,我编写了一个非常简单的代码:它在我要翻译的元素上方显示了一个“翻译”链接,然后单击该链接即可获得翻译。 现在,我也将“自动单击”该链接以显示翻译,而无需单击链接本身。 我已将click()操作添加到链接:现在,在加载页面时,单击了链接,但是元素内容未翻译。 这是我使用的代码:
<!DOCTYPE html>
<html lang="it">
<head>
<meta charset="UTF-8">
<title>Test Google translate</title>
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" crossorigin="anonymous"></script>
</head>
<body>
<div id="target" class="goog-trans-section" lang="it">
<div class="goog-trans-control"></div>
prova traduzione testo italiano
</div>
<script type="text/javascript">
function googleSectionalElementInit() {
$.when(
new google.translate.SectionalElement({
sectionalNodeClassName: 'goog-trans-section',
controlNodeClassName: 'goog-trans-control',
background: 'transparent'
}, 'google_sectional_element') //;
).done(function(){
document.querySelector('div.goog-trans-section a').click();
});
}
</script>
<script type="text/javascript" src="//translate.google.com/translate_a/element.js?cb=googleSectionalElementInit&ug=section&hl=en"></script>
</body>
</html>
是否有一种方法可以使它正常工作?还是有另一种无需使用Cloud API即可自动转换elemenet内容的方法?