首页 > 解决方案 > 将类添加到 innerHTML 属性

问题描述

我无法将classusing JS 添加到innerHTML元素:

var el = document.createElement("a");
el.href = `/${someurl}/`;
el.innerHTML = `<img src="${someimg}"></img>`;
el.innerHTML.className = `testclassimage`;

这导致:

<a href="/someurl/"><img src="https://..."></a>

我也尝试过:

el.innerHTML.insertAdjacentHTML(`class="testclassimage"`)

但结果是一样的。如何将类添加到<img>?

标签: javascripthtml

解决方案


你不应该innerHTML首先使用。

相反,就像您对 , 所做的那样adocument.createElement用于创建图像以及element.appendChild放置在锚点中:

const anchor = document.createElement('a');
anchor.href = 'https://example.com';

const img = document.createElement('img');
img.src = 'https://via.placeholder.com/150';
img.className = `testclassimage`;

anchor.appendChild(img);

document.body.appendChild(anchor);


推荐阅读