开发者

PopUp Blocker code detection not working

I have turned on PopUp blocker in FF and Chrome. I have a piece of code to check PopUp is working as:

function checkPopUp()
{
  var myTest = window.open("about:blank","","directories=no,height=1,width=1,menubar=no,resizable=no,scrollbars=no,status=no,titlebar=no,top=0,location=no");
  var popUpsBlocked = '';
  if (!myTest) {
    popUpsBl开发者_如何转开发ocked = true;    
  } else {
    popUpsBlocked = false; 
  }
  return popUpsBlocked;   
}

its working fine "onload" of the page. But when i am using it with hyper link onclick, its not working a popup is getting opened.

 <a onclick="checkPopUp()" href="#">Test</a>


Browsers allow popups during "click" event loops. Different browsers have different configuration options under user control, but generally the default behavior is that a "click" is treated as a user willingly requesting functionality from a page.


The below code has been tested in FF29.0, IE9, Chrome35.0, Safari and the best part is it is working!!!

 var popupBlocker = {

  isPopupBlocked: function (width, height) {
                setTimeout(function () {
                    var popup = window.open("");
                    if (!popup) {
                        return false;
                    }
                    else {
                        popup.document.open();
                        popup.document.write("<html><body onload='window.close();'></body></html>")
                        popup.document.close();
                        return true;
                    }
                }, 100);
            }

        };

  popupBlocker.isPopupBlocked();
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜