Да, вы можете смоделировать щелчок мыши, создав событие и отправив его:
function click(x,y){
var ev = document.createEvent("MouseEvent");
var el = document.elementFromPoint(x,y);
ev.initMouseEvent(
"click",
true /* bubble */, true /* cancelable */,
window, null,
x, y, 0, 0, /* coordinates */
false, false, false, false, /* modifier keys */
0 /*left*/, null
);
el.dispatchEvent(ev);
}
Остерегайтесь использования метода click
для элемента - он широко реализован, но не является стандартным и потерпит неудачу, например. PhantomJS. Я предполагаю, что реализация jQuery .click()
делает правильные вещи, но не подтвердила.