Недавно исследовал очень странный баг - при добавлении iframe на страницу, открытую в обложке папки, у меня переставали работать кастомные контекстные меню для ссылок.
Оказалось, что Directum при загрузке iframe добавляет свои обработчики contextmenu для всей страницы и показывает для элементов <a/> своё контекстное меню!
Раньше для динамически размещаемых ссылок на объекты я добавлял их в html до полной загрузки страницы (детальнее в этом ответе на вопрос).
Оказалось, что достаточно выполнить следующий код в любой момент времени и Directum привяжет ко всем <a/> свои контекстные меню.
if(!document.forContexMenu){
var ifrm = document.createElement('iframe');
ifrm.setAttribute('id', 'forContexMenu');
ifrm.setAttribute('style', 'display:none;');
ifrm.setAttribute('src', 'javascript:void(0);');
document.body.appendChild(ifrm);
} else {
document.forContexMenu.src = 'javascript:void(0);';
}
Контекстное меню до и после выполнения этого кода:
Проверял на 5.0 и 5.7
Авторизуйтесь, чтобы написать комментарий