如何在Google Sites中实现移动端访问重定向或消息推送?
Google Sites移动端重定向/消息提示及JS支持问题解答
核心问题:Google Sites是否支持自定义JavaScript?
当前新版Google Sites不允许直接添加全局自定义JavaScript代码,平台限制了这类代码的执行权限,这就是你写的检测代码甚至alert命令都无响应的原因。旧版Google Sites曾支持有限的JS嵌入,但目前主流的新版已完全禁用该功能。
移动端重定向/提示的可行方案
方案1:用内置响应式布局替代重定向
如果只是想给移动端用户展示专属内容,无需跳转,直接使用Google Sites的响应式设计功能:
- 编辑页面时,选中目标内容区块
- 在右侧面板的「响应式」选项中,设置该区块仅在桌面/移动端显示
- 可专门为移动端添加提示文本或跳转链接,引导用户访问指定页面
方案2:嵌入HTML块实现移动端提示(无法自动全局跳转)
Google Sites允许嵌入独立HTML块(运行在iframe中),虽然无法控制父页面跳转,但可在iframe内显示提示信息:
<script> // 检测iframe宽度(需配合设置嵌入块的响应式宽度) if (window.innerWidth <= 500) { document.write('<div style="padding:20px;background:#ffeb3b;text-align:center;font-size:16px;">此页面移动端体验不佳,请访问<a href="https://example.com/" target="_blank">专属移动端页面</a></div>'); } </script>
添加步骤:
- 编辑Google Sites页面,点击「插入」>「嵌入」>「嵌入代码」
- 粘贴上述代码,调整嵌入块的响应式设置,使其仅在移动端显示
方案3:通过Google Apps Script实现自动重定向
若必须实现自动跳转,可借助Google Apps Script构建中间跳转页:
- 打开Google Apps Script平台,新建项目
- 替换默认代码为:
function doGet() { return HtmlService.createHtmlOutput(` <script> // 检测设备屏幕宽度 if (window.innerWidth <= 500) { window.location.href = "https://example.com/"; } else { window.location.href = "你的Google Sites页面原始URL"; } </script> `); }
- 部署为Web应用:设置「谁可以访问」为「任何人,甚至匿名」,复制生成的Web应用URL
- 将该URL作为用户访问的入口,用户打开后会自动检测设备并跳转
内容的提问来源于stack exchange,提问作者Arman Hr
相关产品推荐
相关产品推荐

