问题标签 [gpt]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - GPT - 在关键价值广告位中展示的非关键价值广告
我在 DFP 中设置了广告单元和键值。我根据 Google 的教程使用以下代码构建了该站点:
但是,当我测试页面时,我的 ROS 广告(没有分配键值但针对所有广告单元)正在显示。我已经搞砸了一段时间,无法弄清楚为什么 setTargeting 似乎无法正常工作以将非定向广告排除在关键值广告位之外。
gpt - 注册到事件的 Google 发布商代码
我查看了 Google Publisher Tag 参考,并决定可以在我的广告位中添加一些事件。如果我只定义了一个插槽,它会很好用。如果我添加更多插槽,事件会在我的控制台上重复我有插槽的次数。
所以,如果我做这样的事情:
我的 console.log 将是 3x “插槽已被渲染:”。如果我从 defineSlot 部分中删除两个.addService,它只会 console.logs 一次,但不会呈现广告。
有没有办法在不破坏其他所有内容的情况下删除额外的日志记录?一段时间后它会变得非常混乱。
谢谢!
javascript - 为 gpt.js 文件声明寻找 document.write 的替代方案
我可以用什么来代替JavaScript中的document.write ?有没有不同的方法来重写这行代码?
javascript - 用于点击事件的 Google DFP 侦听器事件
我正在使用以下内容从每个可用插槽eventListener
中获取某些输出gpt
现在我想创建一个eventListener
当有人点击广告时让我知道的,我尝试了以下无济于事
我知道我可以从 DFP 获取报告,但我们正在尝试立即收集这些数据以及实时点击率和点击次数,而无需每次都检查报告。有没有我没有尝试过的建议?
javascript - GPT 在同一 div 元素中重新加载广告
对于单页应用程序,我想知道是否可以请求新广告以替换 div 容器中的现有广告
到目前为止我找到的示例,确认可以刷新现有的slots
,但我的用例不同(https://support.google.com/dfp_premium/answer/2694377?hl=en&ref_topic=4390040)
我的目标是为常见的模板页面提供一个通用的广告容器元素,并为每个分类不同的 pageTransition 请求一个新的广告。
到目前为止我所做的当前测试,尝试只更改 slotName 然后调用 refresh() 但它似乎不起作用!例如(比以下示例复杂得多,但只是为了说明这一点):
javascript - 针对点击事件的 Google DFP 广告展示
我想在用户点击时显示 google dfp unitnavbar
问题是它给出了一个错误
我们可以在其中使用jquery吗?如果没有,那么我该如何实施?
angular - SPA(Angular,Vue)中的Google DFP - 如何销毁广告及其所有引用以避免内存泄漏
我尝试在SPAVue.js
和Angular
SPA 中使用谷歌的 DFP,但它似乎会导致内存泄漏。
在 Angular中,您可以在这里看到概念证明https://github.com/jbojcic1/angular-dfp-memory-leak-proof-of-concept。对于广告,我使用的是ngx-dfp npm
包(https://github.com/atwwei/ngx-dfp)。要重现拉取并运行概念证明项目,请转到主页,最初在提要中有 3 个广告,然后进行堆快照。之后使用标题中的链接转到没有广告的页面,再次进行堆快照,您将看到在槽被销毁后保留槽引用,这导致内存泄漏。
在 Vue中,我有一个创建和销毁广告位的组件,我在内容提要中动态添加它们。当我离开页面时,组件被销毁并且在 beforeDestroy 钩子中,我调用了 destroySlots但似乎一些引用仍然存在。
这是我的 dfp-ad 组件:
我正在注入 GPT 并在插件中设置全局配置:
这是广告组件之一:
有没有人有类似的问题?难道我做错了什么?或者,也许您只是无法在 SPA 中销毁和创建插槽而不会导致内存泄漏?
编辑
这是分离节点的屏幕截图:
javascript - Javascript:动态生成的函数,引用外部包含的带有 GPT 渲染的 JS 文件
谢谢你看这个。我认为我的想法犯了一个概念性错误,这就是为什么我会先让你知道我的情况:
我有 1 个或 x 个 DIV,在其中显示 DFP AdUnit,并将使用这些动态生成的函数。只要 DIV 位于可见区域,该函数就会触发:
- 我动态生成链接
使用此功能,我可以动态创建链接,并且到目前为止有效。所以我为 myfmydiv1/div1、myfmydiv2/div2、myfmydiv3/div3……生成链接。并将它们添加到父节点。
- 我动态生成 AdSlot
在这一部分中,我生成广告单元并将其添加到全局变量“window['slot_'.concat(slot.toString())]”(<== 我在网上看到过这个,我很好奇这是不是正确的方法。至少我可以在 GCR 开发工具中看到它)
- 我动态生成引用#1 处链接的函数。
一旦 DIV 插槽位于可见区域并刷新广告单元,就会触发该功能。
它总是触发错误的功能。比如div1触发了div2的函数,div1实际上并没有加载,而是div2。有什么想法/帮助吗?
reactjs - Google DFP 自定义参数
我正在开发一个 ReactJS 应用程序,该应用程序当前使用react-gpt模块来提供 DFP 广告。
是否可以创建一个 DFP 广告来显示我们传递给它的自定义 HTML 和 CSS?我想创建一种“原生广告”体验,其中广告内容由应用程序的内容(标题、图像路径、内容预告片)管理并使用内容 ID 将其连接到 DFP 以管理性能。
如果有任何不清楚的地方,请告诉我。我一直在搜索文档,但没有找到我正在尝试做的示例。
google-dfp - 如何知道是否在 GPT 上调用了“disableInitialLoad”?
我需要知道是否被调用,在这种情况下,我将使用 a和 a调用googletag.pubads().disableInitialLoad()
加载广告,否则我将使用 just 加载它。我的假设是,如果我总是打电话加上我会收到 2 个广告请求,除非被调用。display
refresh
display
display
refresh
disableInitialLoad
有可能知道吗?