ページに一連のスパン要素があります。それらは、バックエンドから受信したいくつかの情報で配置され、style 属性は以前の javascipt の実行に応じて変更されます。
地図のようなものです。
地図上にはいくつかのスポットがあり、すべてのスポットには名前があります。ただし、いくつかのスポットには複数の名前がある場合があります。
<span class="myimages" id="tag-14" style="position: absolute; left: 191px; top: 217px;">hello</span>
<span class="myimages" id="tag-15" style="position: absolute; left: 141px; top: 112px;">bye</span>
<span class="myimages" id="tag-16" style="position: absolute; left: 191px; top: 217px;">welcome</span>
<span class="myimages" id="tag-17" style="position: absolute; left: 50px; top: 12px;">lunch</span>
私がやりたいことは、このオブジェクトの配列内にグループを作成して、必要に応じて変更できるようにすることです。
配列を作成してから、同じ属性 (同じ位置) を共有するものを取得し、そのスパン要素のグループにのみ影響し、他の要素には影響しないようなことをしたいと考えています。
私が満たすことができる最初の部分:
function foam()
{
var menus = document.getElementsByClassName("myimages");
for (var i=0; i < menus.length ; i++)
{
menuposition = menus[i].getAttribute("style");
menus[i].setAttribute('style', menuposition+'background-color:pink;');
}
}
しかし、これはもちろん、すべての要素のスタイル属性を変更します。ループ内でループを作成したり、これを満たすための条件や何かを作成したりしたいと考えています。
前もって感謝します。
更新: クラス名を自動的に割り当てることはできません。位置情報は、「スポット名、画像上のスポット名の座標」のようなフラットなリストから来ており、1 つのスポットが同じであることを示す情報のみが x & y 座標です...どういうわけか制限されていますが、そうです.
また、背景色を変更するだけでなく、いくつかの属性を変更します。