JavaScript 不在外部域上执行

标签 javascript jquery wordpress ubuntu

我有一个刚刚启动的 wordpress 网站,我正尝试从我们设置为广告管理器的 joomla 网站向其中嵌入一些广告。

广告管理器提供了一个用于嵌入广告区域的脚本。我过去经常使用它,它总是很管用。试图让脚本在这个新服务器上运行不是在玩球。

我制作了以下 test.php 文件并将其上传到广告服务器和 wordpress 网站。如果我在广告服务器上加载它,它会拉取广告,如果我在 wordpress 服务器上打开它,脚本似乎不会执行。我还尝试使用 jquery 函数 getScript,这在广告服务器上有效,但在 wordpress 服务器上无效。

<!doctype html>
<html>
<head></head>
<body>
  <script type="text/javascript" language="javascript" src="http://ads.childmags.com.au/index.php?option=com_adagency&controller=adagencyAds&task=remote_ad&tmpl=component&format=raw&zid=103"></script>
</body>
</html>


<!doctype html>
<html>
<head>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
</head>
<body>
  <script>$.getScript("http://ads.childmags.com.au/index.php?option=com_adagency&controller=adagencyAds&task=remote_ad&tmpl=component&format=raw&zid=103")</script>
</body>
</html>

是否可能是需要更改的 wordpress 服务器配置?有什么办法可以解决这个问题吗?

最佳答案

您正在将一个站点的脚本用于另一个站点,因此可能是跨源问题。

要解决此问题,您必须添加 crossorigin="anonymous"

喜欢:- <script type="text/javascript" crossorigin="anonymous" language="javascript" src="http://ads.childmags.com.au/index.php?option=com_adagency&controller=adagencyAds&task=remote_ad&tmpl=component&format=raw&zid=103"></script>

当使用“CORS”加载请求时存在 Crossorigin 属性,这现在是在未从“同源”加载时进行 SRI 检查的要求。

不幸的是,Wordpress 无法在排队的脚本上正确处理属性。

关于JavaScript 不在外部域上执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45429445/

相关文章:

javascript - SlickGrid 链接格式化程序 需要动态超链接帮助

javascript - 无法在 Google Chrome 中获取 JSON 文件?

javascript - 弹出窗口的显示 id 按钮不起作用

javascript - 将图像放置在折线图中的 Y 轴标签上

css - WordPress 字体系列 : "上存在 CSS 错误

javascript - 替换双逗号,直到出现一些

javascript - 如何获取 SVG 线条或路径的边界框,包括 JavaScript 中的笔划宽度?

mysql - 使用wordpress修复从数据库检索数据的格式

wordpress - REST API woocommerce - 未在 GET/customers 上显示所有客户

javascript - 在 jquery 中停止警报禁用选项