gpt4 book ai didi

javascript - 为什么浏览器不在通过 fetch API 检索的 HTML 片段中运行 <script>?

转载 作者:行者123 更新时间:2023-11-30 14:39:39 25 4
gpt4 key购买 nike

<分区>

我正在尝试使用获取 API 获取 HTML 片段,然后将其添加到 HTML 页面。虽然这适用于 HTML 内容,但我注意到如果我放置 <script>片段中的标签,标签没有被剥离,但也没有被执行。

下面是一个例子。我希望 alert触发,但它没有触发,即使脚本标记出现在页面上也是如此。

我的问题是 (1) 为什么 <script>没有得到评估,并且(2)有没有办法让它评估?

index.html

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Index</title>
</head>
<body>
<script src="main.js"></script>
</body>
</html>

片段.html

<h1>Hello</h1>
<p>It works</p>
<script>
alert('hello') // doesn't work, but script still appears on page
</script>

主.js

fetch('fragment.html').then((res)=>{
return res.text()
}).then((data)=>{
var div = document.createElement('div')
div.innerHTML = data
document.body.appendChild(div)
})

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com