本页面适用于 Apigee 和 Apigee Hybrid。
查看 Apigee Edge 文档。
如需在门户每个页面的 <body>
标记之前添加自定义 JavaScript 代码或 HTML 内容,请执行以下操作:
- 选择发布 > 门户,然后选择您的门户。
- 点击着陆页上的设置。或者,您也可以在顶部导航栏的下拉菜单中选择设置。
- 点击自定义脚本标签页。
在自定义脚本部分中,在文本框内输入自定义 JavaScript 代码。您可以包含多个脚本。**
点击保存。
以下部分提供了自定义脚本的示例:
另请参阅配置分析跟踪。
在 onLoad 或 onUnload JavaScript 事件期间执行自定义脚本
定义门户中的每个页面在执行以下操作时要执行的自定义脚本:
- 使用
onLoad
JavaScript 事件加载到 DOM。 - 导航远离使用
onUnload
JavaScript 事件。
您的自定义函数必须定义为(在 window
变量中声明的)全局命名空间中 portal.pageEventListeners
的一部分。
onLoad
和 onUnload
事件均将页面的当前路径作为其第一个参数接收(如 /quickstart
)。onUnload
函数从 onLoad
调用启用上下文接收返回值作为其第二个参数,以便在两个事件之间传递。使用 onUnload
清理不再需要的事件监听器,并执行其他清理活动。
例如:
<script>
window.portal = {};
window.portal.pageEventListeners = {
onLoad: (path) => {
if (path === '/quickstart') {
// Change text content of first <p> element to something
// else. (DOM must be loaded when onLoad is called)
document.getElementsByTagName('p')[0].textContent =
'Welcome to the quick start! Be sure to send us your feedback.';
// print a custom message to the console every second while user is on
// quickstart page.
const interval =
window.setInterval(() => console.log('Hello'), 1000);
return interval;
}
return undefined;
},
onUnload: (path, contextReturnedFromOnLoad) => {
if (contextReturnedFromOnLoad != null) {
// Stop printing custom message to console every second.
window.clearInterval(contextReturnedFromOnLoad)
}
},
};
</script>
添加 Cookie 许可弹出式窗口
自定义脚本可用于实现 Cookie 同意解决方案。JavaScript 中实现了一些常用的开源选项;选择一个符合特定合规性要求的选项。
例如,以下脚本使用 Cookie 信息脚本。
<script type="text/javascript" id="cookieinfo" src="//cookieinfoscript.com/js/cookieinfo.min.js">
</script>