开发者

How to prevent popup using javascript?

Is there anyway I can use javascript to block popup from another website (iframe)?

Example: I have a website, which iframe to several other sites. One of them has a popup script like this:

<script type="text/javascript">
var popunder=new Array()
popunder[0]="http://www.target.com"

//Specify the width and height of new popunder window (in pixels).
var width = '700'; 
var height = '450';

//these are obvious variables. set "yes" or "no".
var p = 'scrollbars=yes, resizable=yes, toolbar=yes,' + 'menubar=yes, status=yes, location=yes, left=85, top=20, height=' + height + ',width=' + width;

// Load new PopUnder only o开发者_高级运维nce per browser session? (0=no, 1=yes)
// Putting 0 will cause the Popunder to load every time page is loaded
// Specifying 1 will cause it to load only once per session
var one_time=0

// That's it! Don't edit the code below unless you're really good. :-P //

function get_cookie(Name) {
  var search = Name + "="
  var returnvalue = "";
  if (document.cookie.length > 0) {
    offset = document.cookie.indexOf(search)
    if (offset != -1) { // if the cookie exists
      offset += search.length
      //set the index of beginning value
      end = document.cookie.indexOf(";", offset);

    if (end == -1) // set the index of the end of cookie value
         end = document.cookie.length;
         returnvalue = unescape(document.cookie.substring(offset, end))
      }
   }
  return returnvalue;
}

function loadornot(){
if (get_cookie('popunder')==''){
load_pop_power()
document.cookie="popunder=yes"
}
}

function load_pop_power(){
win2 = window.open(popunder[Math.floor(Math.random()*(popunder.length))], "bw", p)
win2.blur()
window.focus()
}

if (one_time==0)
load_pop_power()
else
loadornot()
</script>

Provide that this popup cannot be block and user have a low security setting on firefox or IE.

I have the ff. iframe on the site: (iframe.php)

<iframe src="http://friend.com/pop.php"></iframe>

What should i do on the iframe.php page to prevent popup?


Its not possible. wdm is right. but a more detailed answer is provided here.

How to block pop-up coming from iframe?


I'm pretty sure what you're trying to do is not possible.

Two options...

  1. Avoid iframing sites that have popups.
  2. Ask them if they'll remove the popup or create a special landing page for you. If you are affiliated with them somehow they may help you out.


No, I do not agree with others, html5 has a sandbox attribute which controls what is seen or what actions can be done through the iframe.

just add the following attribute in your Iframe and it should block the pop-ups "sandbox="allow-scripts allow-forms allow-same-origin""

eg <iframe src="source of your iframe" sandbox="allow-scripts allow-forms allow-same-origin">

0

上一篇:

下一篇:

精彩评论

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

最新问答

问答排行榜