【发布时间】:2022-04-12 15:30:29
【问题描述】:
我的网站有一个新版本,它使用 VueJS v2(以前没有)。主要代码放在
<div id="app"></div>
里面,启动Vue。问题是我与一家名为
Ezoic
的广告公司合作,该公司通过使用 AI 将广告注入页面,但这些
广告无法正常显示
。我认为这与这些错误有关:
https://pagead2.googlesyndication.com/pagead/show_ads.js show_ads.js:53 无法在“文档”上执行“写入”:不是 可以从异步加载的文档中写入 外部脚本,除非它被显式打开。
Ezoic 与 Google Ad Exchange 合作,因此我认为与问题相关的是上述行。
我想知道,有什么方法可以让我的应用程序与 Ezoic/Adsense 兼容?我考虑只在需要的地方而不是整个页面上使用 Vue(
<div id="app"></div>
从正文的开头到正文的结尾),但这意味着我需要
multiple Vue instances
运行,因为我有组件顶部(搜索框)以及整个页面。
我无法访问 Ezoic 注入页面的代码,因为这是在他们的末端完成的(我的网站使用他们的 DNS,他们在发送给访问者之前修改了响应,以包含广告代码)。 Ezoic 团队目前也在研究这个问题,但我可以传递的任何信息都可能会有所帮助!
-
您找到解决方案了吗?我对 Next.JS 和 Ezoic 也有类似的问题。
-
我的 解决方案 是使用多个 Vue 实例。这无论如何都不理想,这意味着我需要用 jQuery/vanilla JS 替换某些功能。您可以通过将它们投射到“窗口”上来在 Vue 实例之间进行引用,这很有帮助。更详细地说,您可以将广告代码放置在 Vue 实例之外(例如,在
-
很遗憾,我需要将整个 Vue 应用程序分成两半才能插入广告。我希望 Ezoic 能够更好地控制触发广告填充。通过 CDN 注入代码坦率地说是一种垃圾解决方案。如果我有时间,我想尝试的是在 Vue 挂载事件期间获取注入的代码并手动应用它。
-
我知道这是旧的,但您是否尝试在加载占位符 dom 元素后使用 ezstandalone.define() 函数定义占位符?
-
@DynamicRemo 已发布答案。这有点特定于我的用例,但应该让您了解整个过程。