1

サムネイルを表示したいアイテムのリストがあります。ただし、サムネイルのいずれかが欠落していると記録されている場合は、「欠落している画像」の画像を表示したいと思います。リストが長い可能性があるので、必要なときにいつでも同じ「欠落している画像」を再利用したいと思います。

ただし、以下のテストコードでは、画像のコピーが1つだけ(最後に追加されたもの)になります。私の質問:毎回new()を実行せずに、1つの要素を複数回追加するにはどうすればよいですか?

ImageElement img = new ImageElement();
img.src= "http://myserver/missing.png";  
...
div.nodes.add(img);    
div.appendText('11111');
div.nodes.add(img);    
div.appendText('22222');
div.nodes.add(img);    
div.appendText('33333');
4

1 に答える 1

2

divそのコードでは、要素に新しい画像を追加していません。div.nodes.add(img)実際には、要素の下に最後のノードとして追加します(内部imgNode.appendChildを使用します)。divnodes.add(node)

ImageElementそれを機能させるには、それぞれに新しいものを作成する必要がありますdiv.nodes.add(img)Node.clone()を使用して新しいを作成することもできますImageElement

あなたの場合、次のようなものです:

final img = new ImageElement(src:"http://myserver/missing.png");
div.nodes.add(img.clone(false));
div.appendText('11111');
div.nodes.add(img.clone(false));
div.appendText('22222');
div.nodes.add(img.clone(false));
div.appendText('33333');
于 2013-01-10T17:07:21.617 に答える