2015-05-19 2 views
0

Мне нужно запустить событие click объекта map в следующем коде Функция e берет координаты щелчка мыши на карте. Я хочу, чтобы определить точку назначения, поэтому мне нужно, чтобы вызвать событие щелчкаКак я могу программно вызывать событие click?

function setupRoutingAPI(map, ghRouting) { 
    map.on('click', function (e) {}); 

    } 
} 

ответ

2

Вы хотите, чтобы trigger("click") на map

map.trigger("click"); 

После того, как даже установлен. Если событие не определено, оно не будет срабатывать.

0

Извлечь функцию из события click, чтобы сделать ее многоразовой. Затем передайте эту функцию в событие click по имени и вызовите его, когда вам это нужно.

+0

JS является событийным языком, поэтому я думаю, что он должен быть использован как таковые. Запуск фактического события клика будет намного чище imo. – Pevara

+0

олицетворение события щелчка является взломанным. Это ненужно, менее семантично, больше кода и менее многоразового использования. Если вы хотите связать эту же функцию с другим событием, у вас будет больше проблем. – FEA5T

2

Если вы используете JQuery вы можете сделать

$('.map').trigger('click'); 

или равнину JavaScript Пример

var map = document.getElementById('map'); 
map.onclick(); 

UPDATE

Таким образом, обычный пример JS не работает хотя

map.click(); 

функционален и вызывает событие на элементе

Пример: http://jsfiddle.net/m5f9g7ft/4/

+0

прослушиватель для события click не работает для вышеуказанного кода javascript –

+0

@ ÖzcanEVREN, вы правы, я обновил ответ – infinity

+0

Я попытаюсь щелкнуть по этому элементу в моем html-коде точно –

Смежные вопросы