2

When I do a window.open() is there a way to tell the browser to stay on the current window or tab and not go to the new tab or window?

user823527
  • 3,644
  • 17
  • 66
  • 110

3 Answers3

3

Use the _self target.

window.open("http://www.example.com", "_self");

Also take a read at the Mozilla documentation or another reliable source.

For basic Javascript commands, I'd go with W3Schools which, even though unrelated to W3C, provide easy to comprehend info and examples on basically any JS method.

Having more than one source of info is always beneficial, and you can always use Google as well.

Fabrício Matté
  • 69,329
  • 26
  • 129
  • 166
  • 1
    No please! Read something more reliable, like [Mozilla Developer Connection](https://developer.mozilla.org/en/DOM/window.open). Stay away from w3schools! See http://w3fools.com. – bfavaretto May 08 '12 at 01:32
  • 1
    Mhm, interesting. I learned A LOT of javascript from W3Schools though. Even though they're not affiliated with W3C, their site is filled with easy-to-comprehend info and examples. – Fabrício Matté May 08 '12 at 01:34
  • I'm not saying everything on w3schools is bad, but there are some really bad and misleading examples there. The fact they're not affiliated with the W3C is not that important, but wrong code and explanation can really compromise a beginner's learning process. – bfavaretto May 08 '12 at 01:37
  • Don't get me wrong, I learnt from them too, then I found other sources that I liked better (like MDC). I recently found out the w3fools site, and I think they have a point. They emphasize w3schools own site says "We do not warrant the correctness of [W3Schools] content", and they suggest wikifying the site, which could be a really positive step. They are a little pedantic pointing out every mistake on w3schools, but it's for a good cause. And, for the record, your answer is correct and I upvoted it! :) – bfavaretto May 08 '12 at 01:41
  • Thanks. :) Yes, it's the first time I see the W3Fools site and I have to agree that wikifying the site would be a huge step forward. Maybe they might have their reasons to not wikify it now (fear to lack staff to revert vandalism, huge system change etc). I've used the Mozilla documentation before, I'll start to use it more often now. =] – Fabrício Matté May 08 '12 at 01:46
2

If your goal is to use the current window, you can simply use:

window.location

But, if you want to open a child window and leave focus on the parent window, I think you'll find it quite difficult as opener.focus() I've read doesn't work in all browsers.

See these SO questions for reference:

Prevent window.open from focusing

How to return focus to the parent window using javascript?

Community
  • 1
  • 1
Chris Gessler
  • 22,727
  • 7
  • 57
  • 83
2

Found that a way to do this is with self.focus() in the javascript called from the original window. Got this from reading that discussion: Prevent window.open from focusing.

So my code looks like this.

    $.ajax({ 
        url : "filename.php", 
        dataType: "html", 
        success : function (data) { 
            $('#div').html(data);
            $('#div2').css('visibility','hidden');
        } 
    });

    var external_window = window.open(url,'_blank');
    self.focus();
Community
  • 1
  • 1
user823527
  • 3,644
  • 17
  • 66
  • 110