我正在使用bing translate api,我有以下代码
function translateali(){
document.onreadystatechange = function () {
if (document.readyState == 'complete') {
Microsoft.Translator.Widget.Translate('en', 'zh-cn', onProgress, onError, onComplete, onRestoreOriginal, 2000);
}
}
function onProgress(value) {}
function onError(error) {}
function onComplete() {}
function onRestoreOriginal() {}
}
translateali()
我正在尝试将函数绑定到onclick事件,这就是为什么我将它包装在一个函数中但它在click上没有做任何事情。但是,如果我删除下面的函数换行,它将适用于页面加载
document.onreadystatechange = function () {
if (document.readyState == 'complete') {
Microsoft.Translator.Widget.Translate('en', 'zh-cn', onProgress, onError, onComplete, onRestoreOriginal, 2000);
}
}
function onProgress(value) {}
function onError(error) {}
function onComplete() {}
function onRestoreOriginal() {}
}
答案 0 :(得分:4)
您正在添加侦听器,而不是函数。
执行以下操作:
function translateali() {
if (document.readyState == 'complete') {
Microsoft.Translator.Widget.Translate('en', 'zh-cn', onProgress, onError, onComplete, onRestoreOriginal, 2000);
}
}
所以你的按钮看起来像这样:
<button onclick="translateali()">Translate</button>