为了清晰起见,对此进行了编辑:
我有一个 Django 应用程序!
我想使用 google tts 来翻译我网页上的某些项目。现在我有一个 onclick,是的,我应该知道得更好,它从 Django 模板调用一个 javascript 函数,向其传递一个短语,该函数对该短语进行一些处理,插入逗号以获得更好的发音等。
我将 url 传递给灰盒,它打开没有问题,Firefox、chrome...等。在窗口中放置一个嵌入式媒体播放器(在本例中为 gnome 媒体播放器),这样它显然知道它是音频,但是声音不播放,这很奇怪,因为它在我之前的另一个设置中播放,使用相同的浏览器,但没有任何代码更改。
这是从我的函数中调用灰盒函数:
return GB_showCenter(caption, "http://translate.google.com/translate_tts?tl=en&q=I hate programming, don't you?");
现在,如果您采用相同的网址并将其直接放入浏览器地址栏中,它将起作用。同样的调用也适用于非 DJANGO 模板,例如如果我有来自直接 Html 文件的相同标签和相同的 onlcik,它就可以工作......
我在 Linux Mint 中使用 Firefox 4,但在 Opera 11.10 和 Chrome 中也是一样的。
有什么想法吗?也许与缓存有关?
谢谢
附:我也尝试过以下内容,但同样,无法播放..
window.open(url,caption,'width=400,height=200,toolbar=0,location=0,directories=no,status=0,menubar=0,scrollbars=n0,copyhistory=no,resizable=0');
更新:如果我在普通浏览器窗口中使用该链接,然后单击灰框链接,它就可以工作。我假设因为该文件位于缓存中...
最佳答案
您的网址有缺陷:
return GB_showCenter(caption, "http://translate.google.com/translate_tts?tl=en?q=I hate programming, don't you?");
“en”后面不应有问号,而应有“&”符号:
return GB_showCenter(caption, "http://translate.google.com/translate_tts?tl=en&q=I hate programming, don't you?");
而且,不,我喜欢编程。
关于javascript - 使用 greybox js 库使用 google tts 显示窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5862711/