Нашел на иностранном сайте, как симулировать клики на React. Ниже пример, который подходит и для WhatsApp:
const mouseClickEvents = ['mousedown', 'click', 'mouseup'];
function simulateMouseClick(element){
mouseClickEvents.forEach(mouseEventType =>
element.dispatchEvent(
new MouseEvent(mouseEventType, {
view: window,
bubbles: true,
cancelable: true,
buttons: 1
})
)
);
}
// Ищем диалог по номеру телефона:
var element = document.querySelector('span[title="+7 905 837-96-43"]');
simulateMouseClick(element); // Симулируем событие клика
Данный способ оказался рабочим, можно использовать. В целом оказалось достаточно одного события
mousedown:
// Ищем диалог с по номеру телефона:
dialog = document.querySelector('span[title="+7 905 837-96-43"]');
// Вызываем событие mousedown на найденном элементе:
dialog.dispatchEvent(
new MouseEvent('mousedown', {
bubbles: true
})
);
При этом
bubbles является параметром обязательным, без него не работает.