(Контекст: я делаю почтовый процессор, который показывает электронную почту на веб-странице)
Я использую Angular Renderer2 для прослушивания кликов в определенной области.Я делаю это, потому что сгенерировал некоторый контент с помощью innerHTML и (щелчок) не может быть применен к innerHTML.
Клики ловятся нормально, но когда я пытаюсь выделить текст внутри этой области, текст отменяетсякогда я отпускаю кнопку мыши, это происходит из-за renderer.listen ().
Почему это происходит и как я могу это исправить?
@ViewChild('listener') listener;
...
ngAfterViewInit() {
this.renderer.listen(this.listener.nativeElement, 'click', (evt) => {
if (evt.path[0].id.includes('plus')) {
this.lightboxService.showBox(evt.path[0].src);
}
});
}
Редактировать: проблема не вызванапо методу showBox()
он вызывается исключительно средством визуализации.Когда я использую рендерер без каких-либо методов, проблема все еще возникает.Слушатель запускает клики, это означает, что клики также и по тексту.
Я не могу предотвратить это, ограничивая область прослушивания только изображениями, поскольку я не знаю, где будут размещаться изображения.