我正在尝试将 Google 翻译代码从 PHP(wordpress 插件)输出到页面,即使我将完全相同的代码行直接粘贴到控制台并运行它,它也会给我 Illegal Token 错误。
这是我的PHP:
function AddTranslateSidebar(){
echo "<script>
jQuery(document).ready(function(){
gt = escape('<div id=\"google_translate_element\"></div><script type=\"text/javascript\">function googleTranslateElementInit() {new google.translate.TranslateElement({pageLanguage: \"en\", layout: google.translate.TranslateElement.InlineLayout.SIMPLE}, \"google_translate_element\");}</script><script type=\"text/javascript\" src=\"http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit\"></script>');
jQuery('#sidebar').prepend(unescape(gt));
});
</script>";
}
该代码将以下内容作为 HTML/JavaScript 输出到页面中:
<script>
jQuery(document).ready(function(){
gt = escape('<div id="google_translate_element"></div><script type="text/javascript">function googleTranslateElementInit() {new google.translate.TranslateElement({pageLanguage: "en", layout: google.translate.TranslateElement.InlineLayout.SIMPLE}, "google_translate_element");}</script><script type="text/javascript" src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>');
jQuery('#sidebar').prepend(unescape(gt));
});
</script>
导致错误的原因
Uncaught SyntaxError: Unexpected token ILLEGAL
在 gt = escape( ... ); 线。
但是,如果我使用检查器直接从 HTML 源代码复制该代码,然后将其粘贴到控制台并运行它,它就会工作,并且会显示翻译下拉菜单。
为什么会这样?
谢谢。