h1 的文字消失在哪里?

Where did the text of the h1 disappear to?

提问人:jacob 提问时间:1/10/2023 最后编辑:jacob 更新时间:1/10/2023 访问量:68

问:

我使用 API 在 JS 中创建和 h1,但现在它没有出现在我的网页上。 如果我尝试更改样式,它周围的事物会发生变化,但文本仍然永远不会出现。

这是我的HTML:

<div id="profile-image" class="profile-image"></div>
<div class="profile-name"></div>

这是我的JS:

fetch(GITHUB_URL) 
.then(function(response) {
 return response.json();
 })
.then(function (data) {
 const img = document.createElement('img'); 
 img.src = data.avatar_url;
 img.alt = 'Github prof'
 document.querySelector(".profile-image").appendChild(img); 

 const h1 = document.createElement('h1');
 h1.src = data.name;
 h1.alt = "my name";
 document.querySelector(".profile-name").appendChild(h1);

该图像有效,并且在我的网页上可见。h1 应该出现在它下面,但事实并非如此。当我控制台时.log(data.name) 会出现我想要的文本。我的控制台中没有错误。只是 h1 的文本没有出现。 谢谢

JavaScript HTML DOM

评论

3赞 mplungjan 1/10/2023
HTML 标头没有 src 或 alt 属性
0赞 Dev Rudra 1/10/2023
如上所述,h1 中没有 src 属性。您可以使用 或 更改 h1 的文本innerTEXTinnerHTML

答:

1赞 dev.skas 1/10/2023 #1

h1 标签没有 src 属性,如果要在 h1 中使用而不是 src 中显示值innerText

const h1 = document.createElement('h1');
 h1.innerText = "sample text";
 h1.alt = "my name";
 document.querySelector(".profile-name").appendChild(h1);
<div class="profile-name"></div>

2赞 mplungjan 1/10/2023 #2

HTML 标题元素没有 or 属性。srcalt

也许你的意思是

const data = {"name": "Fred", "avatar_url": "https://via.placeholder.com/150" }
const img = new Image();
img.src = data.name;
img.alt = 'Github prof';
document.querySelector(".profile-image").appendChild(img);
const h1 = document.createElement('h1');
h1.appendChild(document.createTextNode(data.name));
document.querySelector(".profile-name").appendChild(h1);
<div id="profile-image" class="profile-image"></div>
<div class="profile-name"></div>