2

我正在播放页面中某个文件夹中的一些音频,其中大多数播放没有任何问题,但是当播放名称为“jär”的文件时,我收到此错误:

Uncaught (in promise) DOMException: Failed to load because no supported source was found.

我不知道这是否与我的网络浏览器有关,我在 Chrome 上运行我的项目。我正在使用 JavaScript 和 JQuery

该错误仅发生在名称上有某种重音或特殊字符(如 ä)的文件中。当然,我想做的是播放这样的音频,不管它的名字。任何帮助表示赞赏。太感谢了。

4

2 回答 2

3

最有可能发生的事情是您的浏览器没有解析带有 Unicode 字符的 URL。拉取媒体文件时,请尝试将其包装在encodeURIComponent(). 这将根据适当的约定格式化 URI,对特殊字符使用百分比编码。例如,jär变成j%C3%A4r

x = 'jär'
console.log(x)
console.log(encodeURIComponent(x))

于 2017-07-22T06:02:14.553 回答
1

只是想让你知道我终于解决了我的问题,似乎我必须在 ISO 8859 上对值进行编码,所以我所要做的就是将值包装在一个转义子句中,例如:

var encode = escape("jär")

就是这样。它就像一个魅力。我希望此解决方案对遇到此问题的任何其他人有所帮助。

于 2017-07-24T00:18:57.413 回答