javascript - 如何从 index.html 中的动态脚本中删除内容
问题描述
我必须从具有属性的脚本中删除内容,id
并在 index.html 中键入 application/json。它来自另一个应用程序(该应用程序基于另一个应用程序),我找不到脚本存在的位置。我试过了:
<script type="text/javascript">
document.getElementById('wk-ra-state').textContent = ' ';
</script>
但没有任何影响可能是因为脚本始终位于 index.html 正文的末尾。有任何想法吗?
解决方案
实际上,由于您script
在 HTML 页面末尾清空标记的代码位于其上方,因此它会在脚本完全加载之前运行代码。这就是您收到错误的原因:
未捕获的类型错误:无法将属性“innerHTML”设置为 null
为了在网页上加载所有内容后运行代码,请使用:
document.addEventListener("DOMContentLoaded", function(event) {});
它将在所有 DOM 加载后运行代码。
请参见下面的示例,第一个示例不使用 the document.addEventListener("DOMContentLoaded", function(event) {});
,第二个示例使用它。
错误的例子:
<script>
document.getElementById('wk-ra-state').innerHTML = '';
</script>
<!-- end of the html page -->
<script id="wk-ra-state" type="application/json">{&q;APP_SERIALIZATION_KEY&q;:{&q;recentFavorites&q;:{&q;pending&q;:false,&q;recentItems&q;:[{&q;id&q;:&q;&q;,&q;viewed&q;:false,&q;type&q;:&q;document&q;,&q;title&q;:&q;&q;,&q;link&q;:&q;javascript:void(0)&q;}]},&q;suggestions&q;:{&q;pending&q;:false,&q;requests&q;:{},&q;cach ............ </script>
好的例子:
<script>
document.addEventListener("DOMContentLoaded", function(event) {
document.getElementById('wk-ra-state').innerHTML = '';
});
</script>
<!-- end of the html page -->
<script id="wk-ra-state" type="application/json">{&q;APP_SERIALIZATION_KEY&q;:{&q;recentFavorites&q;:{&q;pending&q;:false,&q;recentItems&q;:[{&q;id&q;:&q;&q;,&q;viewed&q;:false,&q;type&q;:&q;document&q;,&q;title&q;:&q;&q;,&q;link&q;:&q;javascript:void(0)&q;}]},&q;suggestions&q;:{&q;pending&q;:false,&q;requests&q;:{},&q;cach ............ </script>
推荐阅读
- android - 没有注册 OpKernel 以支持 Android 上的 Op 'ExtractImagePatches'
- javascript - Angular中的图像放大镜
- apache - 调用 WLAuthorizationManager.obtainAccessToken 时状态为“201”和错误消息“已创建”的失败响应
- javascript - 数组和对象如何是可变的,而字符串、数字和所有原始数据类型是不可变的?
- c# - 如何自动调整从 Xamarin Forms 视图转换为 UIView 的视图中的子视图大小?
- java - Hibernate 映射,其中一个类的多个属性映射到同一个类
- dialogflow-es - 有没有办法回到意图的后备阶梯?
- c - 在 C 中将 8.24 定点、0.000000000000000 转换为 1.000000000000000 范围到 uint32_t
- python-3.x - 单例只包含一个字典,静态可访问
- angular - 我试图在父组件 onClick 中显示隐藏动态添加的组件