我知道这里已经存在一个问题,但是我对javascript知之甚少,而我似乎无法弄清楚他们在添加或在哪里添加的内容。它的链接在这里:IExplorer: SCRIPT438: Object doesn't support property or method 'btoa'
有人可以向我解释他们正在做些什么让它发挥作用吗?感谢。
答案 0 :(得分:4)
较旧的浏览器可能不支持Window.bota
,这基本上是一种奇怪命名的方法,可以将字符串转换为base64表示,如您所知。
在旧版浏览器中提供新功能称为“polyfilling”。将脚本base64.js
(download)或base64.min.js
(download)放在您的网站上(我假设您正在使用后者,并将其放入/js/vendor
目录),然后引用它(之前你需要使用Window.bota
):
<script src="/js/vendor/base64.min.js"></script>
如果浏览器较新,则此脚本不会执行任何操作(即,它不会替换现有的Window.btoa
实现)。如果浏览器较旧,它现在将具有该功能。
如果您想避免阅读base64.min.js
所需的其他HTTP请求,可以使用yepnope:
yepnope({
test: window.btoa && window.atob,
nope: '/js/vendor/base64.js',
callback: function () {
// `btoa` and `atob` are now safe to use
}
});
答案 1 :(得分:1)
在页面标题上添加此行,它将被修复
<meta http-equiv="X-UA-Compatible" content="IE=edge">