1

<img>ページ内の特定のCSSクラスを持つすべて<td>のタグにを追加したいと思います。次のように、「querySelectorAll」を使用して検索しました。

var painted = document.querySelectorAll('.painted');

次に、それぞれに一意のIDを持つ特定の画像を追加します。どういうわけかリストをループして各要素のinnerHTMLを編集する必要があると思いますが、誰かがその構文を提供できますか?

ありがとう

4

1 に答える 1

1

通常のforループのように実行し、各要素にプロパティを追加します。

for (var i = 0, len = painted.length; i < len; i++) {
    painted[i].id = "foo" + i;
    painted[i].innerHTML = "<strong>Your content</strong>";
}

これはinnerHTML、新しいコンテンツを作成するために使用します。より複雑なコンテンツ処理が必要な場合は、単一の構文はありません。DOM APIを学習し、必要な操作を実行する必要があります。

たとえば、画像を追加したい場合は、画像を作成して直接追加できます。

for (var i = 0, len = painted.length; i < len; i++) {
    var img = document.createElement("img");
    img.id = "myimage" + i;
    painted[i].appendChild(img);
}

HTMLマークアップを使用していないことに注意してください。DOMノードには「HTMLコンテンツ」がありません。これはオブジェクトツリー構造の一部であるため、独自の子ノードを持つ子ノードなどがあります。

したがって、実行する必要があるのは、現在のpainted要素をルートとしてDOM選択を実行し、何をどこに配置するかを決定することです。

于 2012-10-03T14:27:16.870 に答える