マーカーのオブジェクトがあります。キーは連絡先の名前です。また、連絡先の名前でもある「連絡先」アイテムを持つオブジェクトの配列。
連絡先にオブジェクトの配列から既存の「ジオフェンス」があるかどうかを検出し、「フェンスを表示」ボタンを表示し、ない場合は「フェンスなし」ボタンを表示しようとしています。
フェンスは、と呼ばれるオブジェクトの配列に格納されますfencesCookie
これまでのコード:
function fenceButton(id) {
for (var key in markers) {
if (markers[key].id === id) {
$.each(fencesCookie, function (i, f) {
if (key === f.contact) {
menu.add(strings[strLang].viewfence, 'fence',
function(){
viewFence(f.lat, f.lng, f.radius);
menu.close();
});
} else {
console.log("No Fence : "+key+" "+f.contact)
}
});
if ($.isEmptyObject(fencesCookie)) {
menu.add('No Fence', 'nofence',
function(){
menu.close();
});
}
}
}
}
console.logは一致しないすべてのアイテムを吐き出しているため、ここに「フェンスなし」ボタンコードを追加すると、「表示」または「フェンスなし」ボタンだけでなく、複数のボタンが表示されます。
私はこれを間違った方法で行っていますか?