javascript - disqus 不适用于 Chrome 中的 https 页面。有什么解决办法吗?

标签 javascript google-chrome pug disqus

我有一个 https 页面,其中嵌入了 disqus 用于对发布的数据进行评论。问题是,当页面在 chrome 中加载时,它会阻止 disqus 代码 执行,因为它是从 http 主机提供服务的。 具体来说:

script(type="text/javascript")
var disqus_shortname = 'postocks';
(function() {
    var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
    dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
    (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();

所以 disqus 不会在 Chrome 中加载。在 Firefox、Safari 中运行良好。

我厌倦了通过以下方式修复它:

  1. 将 dsq.src 制作为 dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js'; 它不起作用。
  2. 我之前已经看到 jquery 文档部分使用了相同的内容。现在尝试该页面,以便我可以引用代码。 Disqus 似乎已被删除。

有什么修复可以让它在 https 页面上工作吗? 另外,如果我在 https 主机上获取 embed.js 并提供服务,这会有所不同吗? 请提出建议。

最佳答案

简单地,使用 https 加载 Disqus 内容,如所述 here .

dsq.src = 'https://' + disqus_shortname + '.disqus.com/embed.js';

关于javascript - disqus 不适用于 Chrome 中的 https 页面。有什么解决办法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14373498/

相关文章:

javascript - 如何修改 Google 扩展中的当前页面?

google-chrome - 内部网站的 Chrome 错误 "Server has a weak ephemeral Diffie-Hellman public key"

javascript - 从 JavaScript 以编程方式打开 Safari/Google Chrome 开发者工具

javascript - jade 中无法解释的 "<"和双输出包括

javascript - 基本 Express.js 应用程序中的 "Failed to lookup view"

javascript - 在 jstree 中选择具有相同名称的节点

javascript - 如何在不使用 jQuery 的情况下禁用所有输入按钮?

javascript - 谷歌地图方向服务零结果

pug - javascript 中的 Jade 插值

javascript - 屏幕中间的 FlatList 没有显示全部内容