无法为 在 中使用 JS 的元素设置新的内部 HTML。HTA 页面



我正在尝试为我的 .HTA 页面例如:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Some title</title>
</head>
<body>
<script>
var headHTML = document.getElementsByTagName('head')[0].innerHTML;
var headHTML = headHTML.replace('Some','Another');
document.getElementsByTagName('head')[0].innerHTML = headHTML;
</script>
</body>
</html>

但是我得到错误:

无法设置内部 HTML 属性。此目标元素无效 操作。

为什么以及如何解决问题?

标题只是一个例子。我需要替换头部和身体中不同元素的内部 HTML。

这是特定于 IE 的问题,而不是 HTA 问题。在IE中,headtitle元素的innerHTML都是只读的(以及其他一些元素(。但是,可以将元素追加到head 。例如,创建一个链接元素以向文档添加样式表:

var elem = document.createElement('link');
elem.rel = 'stylesheet';
elem.type = 'text/css';
elem.href = '....';
document.documentElement.appendChild(elem);

appendChild方法也可用于向document.body添加元素。

参见 MDN 的 createElement 和 appendChild。

你有没有试过把你的JS

进去
<script language="javascript">
</script>

相关内容

  • 没有找到相关文章

最新更新