gpt4 book ai didi

javascript - 使用 Google 代码无法在 'postMessage' 上执行 'DOMWindow'

转载 作者:行者123 更新时间:2023-11-28 18:37:10 27 4
gpt4 key购买 nike

我想在我的网站上添加 Google+ 徽章。当我从 Google 配置工具复制/粘贴代码时,徽章不起作用。我认为问题可能出在 JavaScript 中,所以我创建了一个空的 index.html 并复制/粘贴 Google 代码...但它仍然不起作用:

谷歌代码:

<!-- Place this tag in your head or just before your close body tag. -->
<script src="https://apis.google.com/js/platform.js" async defer></script>

<!-- Place this tag where you want the widget to render. -->
<div class="g-page" data-width="250" data-href="https://plus.google.com/110789175777197362579" data-theme="dark" data-rel="publisher"></div>

index.html 中的完整 HTML

<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>
<body>

<!-- Place this tag where you want the widget to render. -->
<div class="g-page" data-width="250" data-href="https://plus.google.com/110789175777197362579" data-theme="dark" data-rel="publisher"></div>

<!-- Place this tag in your head or just before your close body tag. -->
<script src="https://apis.google.com/js/platform.js" async defer></script>
</body>
</html>

在控制台中我可以看到以下错误:

  • 无法在“DOMWindow”上执行“postMessage”:提供的目标源(“null”)与接收者窗口的源(“null”)不匹配。人
  • 不推荐使用 getAttributeNode()。请改用 getAttribute()。 rs=AGLTcCOasCY_GkJWPJtHt2mUGUYuzPzTCg%20line%209%20%3E%20eval:34:434
  • 无法在“DOMWindow”上执行“postMessage”:提供的目标源(“null”)与接收者窗口的源(“null”)不匹配。人
  • 无法在“DOMWindow”上执行“postMessage”:提供的目标源(“null”)与接收者窗口的源(“null”)不匹配。消息转发
  • 无法在“DOMWindow”上执行“postMessage”:提供的目标源(“null”)与接收者窗口的源(“null”)不匹配。消息转发
  • 无法在“DOMWindow”上执行“postMessage”:提供的目标源(“null”)与接收者窗口的源(“null”)不匹配。消息转发
  • 无法在“DOMWindow”上执行“postMessage”:提供的目标源(“null”)与接收者窗口的源(“null”)不匹配。消息转发
  • 无法在“DOMWindow”上执行“postMessage”:提供的目标源(“null”)与接收者窗口的源(“null”)不匹配。消息转发
  • 无法在“DOMWindow”上执行“postMessage”:提供的目标源(“null”)与接收者窗口的源(“null”)不匹配。消息转发

最佳答案

问题可能是 Google+ 徽章可能要求您通过网络服务器运行代码,而不是通过文件系统在本地查看代码。

不要仅仅打开 HTML 文件,而是尝试使用 Web 服务器托管它。这里有很多选择。如果你安装了Python,你可以尝试运行:

cd [directory where file is located]
python -m SimpleHTTPServer 8080

然后在网络浏览器中查看它 http://localhost:8080

<小时/>

我认为这可能是问题的原因是,当我在文件系统本地运行它时也会遇到错误(尽管与你的错误不同),但是当我通过网络浏览器查看它时,它工作正常,就像所以:

https://jsfiddle.net/wwkdgL5b/

关于javascript - 使用 Google 代码无法在 'postMessage' 上执行 'DOMWindow',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36871119/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com