我正在尝试将Stumbleupon徽章添加到我们的网站,尽管Stumbleupon似乎不支持使用其CSS的HTTPS。
使用此处的Stumbleupon Discovery工具,我选择任何徽章: https://www.stumbleupon.com/dt/badges/create
然后我提供了徽章代码,如下所示:
<!-- Place this tag where you want the su badge to render -->
<su:badge layout="2"></su:badge>
<!-- Place this snippet wherever appropriate -->
<script type="text/javascript">
(function() {
var li = document.createElement('script'); li.type = 'text/javascript'; li.async = true;
li.src = ('https:' == document.location.protocol ? 'https:' : 'http:') + '//platform.stumbleupon.com/1/widgets.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(li, s);
})();
</script>
尝试加载此代码时,会将徽章显示为未固定列表。 通过研究代码,似乎加载的JavaScript文件调用CSS加载位置调用此文件: http://cdn.stumble-upon.com/css/badges_su.css?v=20120613
由于JavaScript文件是外部的,因此无法将CSS强制为HTTPS。
由于我们在https://上加载我们的网站,因此在不允许混合内容的浏览器上自动阻止从http://加载的任何文件。
我联系了Stumbleupon,他们显然已经意识到这个问题,并且不打算解决它。 (他们似乎不想设置SSL)
是否还有其他人遇到过这种带徽章的混合内容问题,如果是这样,有人找到了解决方法吗? (首选代码解析不是插件)