Как получить токен авторизации через OAuth2 и читать письма Outlook через http запросы

Мохаммед Радван, ваше решение элегантно. Чтобы обнаружить iframe-клики в Firefox и IE, вы можете использовать простой метод с document.activeElement и таймер, однако ... Я искал по всем interwebs метод обнаружения кликов на iframe в Chrome и Safari. На грани сдачи я нахожу ваш ответ. Спасибо, сэр!

Некоторые советы: я нашел ваше решение более надежным при вызове функции init () напрямую, а не через attachOnloadEvent (). Конечно, для этого вы должны вызвать init () только после iframe html. Таким образом, это будет выглядеть примерно так:

<script>
var isOverIFrame = false;
function processMouseOut() {
    isOverIFrame = false;
    top.focus();
}
function processMouseOver() { isOverIFrame = true; }
function processIFrameClick() {
    if(isOverIFrame) {
    //was clicked
    }
}

function init() {
    var element = document.getElementsByTagName("iframe");
    for (var i=0; i<element.length; i++) {
        element[i].onmouseover = processMouseOver;
        element[i].onmouseout = processMouseOut;
    }
    if (typeof window.attachEvent != 'undefined') {
        top.attachEvent('onblur', processIFrameClick);
    }
    else if (typeof window.addEventListener != 'undefined') {
        top.addEventListener('blur', processIFrameClick, false);
    }
}
</script>

<iframe src="http://google.com"></iframe>

<script>init();</script>
1
задан AlphaFoxtrot 25 January 2019 в 20:29
поделиться