@Kerm

Как в ymaps.control.ListBoxItem добавить событие при выборе пункта меню?

new ymaps.control.ListBoxItem({
			data: {
				content: 'Владивосток',
				center: [43.115536, 131.885485],
				zoom: 9
			}
		})


Как внутри кода с объявлением пункта меню добавить onclick событие которое будет запускать мою функцию?

Я пробовал вот так:

new ymaps.control.ListBoxItem({
			data: {
				content: 'Екатеринбург',
				center: [56.829103, 60.598939],
				zoom: 16
			},
			events: {
				click: function() {
					alert(1);
				}
			}
		}),


Но видать я делаю что то не так, примера не нашел в гугл.

Вот такое мне не подходит, мне нужно запускать функцию именно при клике на пункт меню со своим передаваемым параметром у каждого пункта:

myPlacemark.events.add('click', function () {
    alert('О, событие!');
});
  • Вопрос задан
  • 30 просмотров
Пригласить эксперта
Ответы на вопрос 1
Andrew_Pinkerton
@Andrew_Pinkerton
Мой ответ помог - отметьте его решением.
Код (спойлер)
const cityList = new ymaps.control.ListBox({
    data: {
        content: 'Select a city'
    },
    items: [
      new ymaps.control.ListBoxItem('Moscow'), 
      new ymaps.control.ListBoxItem('Novosibirsk'), 
      new ymaps.control.ListBoxItem({
        options: {
          type: 'separator'
        }
      }), 
      new ymaps.control.ListBoxItem('New York'), ]
  });
  cityList.get(0)
    .events.add('click', function () {
    myMap.setCenter([55.752736, 37.606815]);
  });
  cityList.get(1)
    .events.add('click', function () {
    myMap.setCenter([55.026366, 82.907803]);
  });
  cityList.get(3)
    .events.add('click', function () {
    myMap.setCenter([40.695537, -73.97552]);
  });
  myMap.controls.add(cityList, {
    floatIndex: 0
  });


Нажми Select a city, выбери город из списка
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы