javascript - 如何覆盖元标记?
问题描述
我有一个网站托管在一个荒谬的地方。今天早些时候,他们将此添加到我页面的“头部”部分。
<meta name="robots" content="noindex, nofollow, noarchive">
不幸的是,我无法直接更改代码,但我可以访问 Robots.txt(他们也搞砸了,但我已经修复了它)、JavaScript 和 Html。有什么办法可以从我的网站上删除那个标签吗?我尝试了这个解决方案,但它似乎不起作用:
document.querySelector('meta[name="robots"]').setAttribute("content", "all");
除了明显的“是时候搬到不同的主机了哈哈”之外,我还有什么其他方法可以做到这一点?也许最终,我可以添加到 Robots.txt 来覆盖它?
解决方案
您是否尝试过从 dom 中删除元标记并添加一个新标记?
像这样:
document.querySelector("[name='robots']").remove();
let metatag = document.createElement('meta');
metatag.setAttribute('name', 'robots');
metatag.content = 'all';
document.getElementsByTagName('head')[0].appendChild(metatag);
推荐阅读
- bluetooth - 蓝牙和 Wi-Fi 在 Ubuntu 16.04 上不起作用
- rest - 将 Powershell 脚本转换为 LogicApp
- reporting-services - 在 SSRS 中使用“上一个”功能
- openssl - 使用 Windows 将 MQTT AWS 桥接到本地 Mosquitto。有人有工作设置吗?
- wordpress - Wordpress .. 如何将网站限制为 IP 或登录
- debugging - 如何查找 VC++/MFC-App 的内存消耗
- php - 正则表达式如何找到行首和行尾
- makefile - 是什么在下面的代码中使 makefile 错误?
- android - 画布drawBitmap不显示位图
- ionic-framework - 如何在 ionic 4 中为桌面视图创建切换侧边栏