按钮onclick不会在首次单击时获得侦听器的值

时间:2020-04-16 14:29:16

标签: javascript html

我试图检测第三方cookie,并检查是否设置了消息侦听器,该消息侦听器从iframe接收消息并设置window.tpCookie变量(是/否)

           window.addEventListener("message", function(evt) {

                window.tpCookie = false;

                if (evt.data === 'MM:3PCunsupported') {
                    window.tpCookie = false;
                } else if (evt.data === 'MM:3PCsupported') {
                    window.tpCookie = true;
                }
            }, false);

我正在点击按钮进行iframe调用,但是在禁用/启用第三方Cookie的情况下刷新iframe

        function checkCookie() {
            var iframe = document.getElementsByName('checkCookieIFrame')[0];
            iframe.src = iframe.src;
        }
        <button id="tempButton" onclick="checkCookie(); console.log(window.tpCookie);">Clicky</button>

但是问题是,第一次单击时,我没有在window.tpcookie变量中得到结果,但是,第二次单击时,却得到了值(在console.log中)。那么,有什么方法可以使事件监听器在单击按钮的同时检查事件吗?

谢谢

0 个答案:

没有答案