我正在使用Instafeed,并在FF 26.0上查看我收到此消息“在安全页面上加载混合(不安全)显示内容”http://distilleryimage5.s3.amazonaws.com/4831ff30846511e3a4f412584b9218a9_8.jpg“'
阅读Instafeed的github是suggestion可以解决这个问题。
如何引用通过Instafeed传输的图像从“http:”更改为“https:”?
此外,这可能是一个新问题,但为什么Instafeed网站上的示例网站不会出现同样的问题?
答案 0 :(得分:1)
这是引用外部源时遇到的常见问题,当站点在https协议下运行时,我们指的是http协议下的内容。
但是,我建议你使用如下,
//distilleryimage5.s3.amazonaws.com/4831ff30846511e3a4f412584b9218a9_8.jpg
而不是
http://distilleryimage5.s3.amazonaws.com/4831ff30846511e3a4f412584b9218a9_8.jpg
我们可以忽略http或https,但仍然可以访问资源,默认情况下需要使用哪个站点运行的协议。
另一个例子:
//code.jquery.com/jquery-1.10.2.min.js ---- will be as same as
http://code.jquery.com/jquery-1.10.2.min.js
答案 1 :(得分:0)
在你的情况下,如果你有另一个变量包含instafeed图像(如document.getElementsByClassName('instafeed')
或其他东西),请使用它而不是我在第一行放置的内容。
var images = document.images || document.getElementsByTagName('img');
for (var i = 0; i < images.length; i++) {
if (images[i].src.indexOf('https') < 0) {
images[i].src = images[i].src.substr(5, images[i].src.length);
} else if (images[i].src.indexOf('https') === 0) {
images[i].src = images[i].src.substr(6, images[i].src.length);
}
}