SimpleQuiz › Part XVI › Conclusion

Amidst all my travelling and whatnot, I realized I hadn’t written a wrap-up for the latest SimpleQuiz, Launching Windows.
The camps were rather divided on this one — with roughly half voting for a Javascript pop-up solution, and the other half voting for using XHTML 1.0 Transitional, which allows for the target attribute without incident.
The argument I found interesting, was “you should never launch links in new windows”. While there may be moral opposition to triggering unwanted events for the user, in reality, designers and developers alike will no doubt find themselves in a situation with an employer or client where this is a requirement.
So often, it’s not a moral decision, but a business one. A sometimes unfortunate reality. In a perfect world (perhaps one’s personal web site) it’s easy to stick to ideals. But in the real world it’s not. Decisions are made that may or may not involve the web designer, and the requirements must then be dealt with. Sometimes you have to make the best out of what you’ve got.

32 Comments

  1. Lucian says:

    Reminding my client how he loves popup windows of spycams helps him remember why he shouldn’t be one of “them”.

  2. I’m having trouble imagining a requirement for opening in a new window where a target would be appropriate. The requirement is usually for application-style websites, where the new window is a temporary pop-up for user-input or such. That’s clearly a case for javascript, so that you can have proper control over the appearance of the window, etc.
    I think the javascript solution is the right answer (using the method talked about in the comments before to make sure that those without javascript can still see the data).

  3. Dave says:

    The main reason i get from clients, is that they don’t want people to move away from their site when they link to someone outside… having the link open in a new window, leaves them with the cosy feeling that they’ll have to come back eventually, if not only to close the window.
    Personally i like to open stuff into new dabs, as i read links in a blog for example, so that i can flick between the two and not lose my place. Javascript links etc then prevent this…
    I think had i still being using IE, this wouldn’t be an issue, but now with tabbed browsing i’m all pure ;)

  4. Thomas Goyne says:

    Your problem there is you aren’t using Opera, which by default opens all new pages, regardless of origin, as tabs :P

  5. Alistair says:

    It wasn’t really a question of should you open links in new windows though, it was when you do; how do you do it.
    I’m all for the using the href properly and Javascript. The strict doctype doesn’t allow for a target, so use Javascript to give you the behaviour that you want. After all, that is one of the key reasons for Javascript I think.
    Al.

  6. pjm says:

    I’m surprised nobody has brought this up yet (or maybe they have, and I missed it):
    Second browser windows confuse users
    “Spawning second browser windows can completely throw users off track because it removes the one thing they are sure how to use: the ‘Back’ button.”

  7. Tom says:

    Dan said: “in reality, designers and developers alike will no doubt find themselves in a situation with an employer or client where this is a requirement.”
    I’m amazed at how many people refuse to accept this fact. In “web standards circles” we have a lot of high ideals about popping windows, tables, font sizes and so on.
    The reality is, a good portion of us work for someone else, whether it be a boss or a client. At some point you are going to get that ultimatum (or you won’t be able to convine a client otherwise) to pop a window or whatever.
    Therefore I think we need to find best practices on how to do these things. If ideally we can avoid things we don’t want to do – great. But a lot of times we won’t have a choice.
    Phew – so that is why I think this SimpleQuiz (and others like it) are good. When the situation comes up, let’s at least do it as best as we can!
    Personally I like BOTH suggestions and I think they are both valid. Use what works best in the situation.
    Tom

  8. David Mohrman says:

    In my current position as a Web Coding Technician for a state government agency, we haven’t been given permission to convert to XHTML coding yet, but I use the target attribute to open new windows to sites outside of our agency’s. My reasoning is that, depending on where they link to on the external site, they may yet have to navigate deeper to actually find the information they need and may get lost or distracted, so when they need to get back to our agency’s site they can just switch browser windows to return instead of trying to remember the path back or clicking the ‘Back’ button repeatedly.
    Also, I think generating a separate window that provides helpful information in context to what the user is doing on the site – such as filling out a form or application – is a better idea than jerking them from their task to provide the info that they then have to navigate back to, and is an appropriate use of pop-up windows in my mind.
    I routinely self generate a second window by using the “Open in New Window” menu option item when clicking on links, so that I can refer back to the original page after exploring the link’s destination, particularly in blogs or from search results.
    However, I don’t appreciate unsolicited windows who’s only purpose is to promote something and serve no purpose to the task at hand and would argue passionately against them if asked to do so.
    When I do get the nod to start using XHTML, I will be using the Transitional doctype declaration to avoid any potential problems like this. Because of some of the weird coding I have to include in our site’s coding to facilitate things like a Google site search appliance, and some other specialized search features, or Dreamweaver coding anomalies, I have yet to get any of our pages to validate no matter how hard I try anyway.
    I vote “Transitional” and keep your options flexible.

  9. Caleb Jaffa says:

    Dave above lamented JavaScript not working with tabs. If the links are written properly then its not an issue. Young Pup made a strong argument about this (sorry don’t have time to find the actual article). Anyways, I’ve found doing a window.open (“url”, “name”); gives me identical behavior to target=”_new”. Anyways the way links should be coded for popups is <a href=”url” onclick=”javascript to open window; return false;”> this allows people to copy the link, bookmark it, have it work in legacy browsers, open it in a new tab, or click it and they will all work properly.

  10. Darrel says:

    “Javascript links etc then prevent this…”
    Not it doesn’t. BAD javascript links do, but as long as you retain a URL in the HREF attribute, you won’t affect those of us that like to control our own windows thank-you-very-much. ;o)
    “Therefore I think we need to find best practices on how to do these things.”
    We need best practices on how to do things badly? ;o) (I know and agree with what your were saying…just thought it was funny-ironic. ;o)
    A big reason for not using pop-ups is just basic accessibility. As it has been pointed out, it’s confusing for many users, and can be crippling for those using screen reader technologies.

  11. Darrel says:

    Also, it’s worth noting that proper href’s in Javascript window openers not only help with accessibility, but can help with search engine indexing bots that ignore javascript.

  12. Keith says:

    Good recap.
    I wanted to touch on the “never” launch browser windows. What about PDFs? That is how this whole issue came about for me. I think you should almost always launch PDFs in a new window.
    I also think there are other times when a new window can be useful. It’s important to let the user know what is going on, but to say “never” launch a new window is pretty silly.

  13. monkeyinabox says:

    I agree with new windows for links being a good thing. I can never understand the logic in sending people away from your site. Sure, you might want to show them something else, by why send them away completely? It might be personal preference, but I usually close a window or tab when I’m done checking out the link. Too many times, I’ve done this realizing that the link was in the original window and I had to retype the URL to get back to where I wanted to be. Unwanted popups are a bad thing, but new links in a new window doesn’t seem so bad, really.

  14. Kim Siever says:

    “Also, I think generating a separate window that provides helpful information in context to what the user is doing on the site – such as filling out a form or application – is a better idea than jerking them from their task to provide the info that they then have to navigate back to”
    Or you can use JS to display hidden elements that accomplish this same purpose. No new windows, no navigating away from the form field.

  15. Darrel says:

    “What about PDFs?”
    PDFs should be left to the whims of the end-user’s browser settings.

  16. The one place that I want a new window almost without exception when I browse, is when linking to a screenshot or appendix document or something like that. This is especially important when I was a dialup user as it meant that I could open the image/doc in another window and carry on reading the main item as the other downloaded. However, as I say, that is my preference. Let the user decide if they want a popup.

  17. jgraham says:

    > I think you should almost always launch PDFs in a new window.
    And I curse everyone who does that very thing. My PDF reader doesn’t open in the browser because opening a PDF reader in a browser is a braindead and useless thing to do (as is clearly demonstrated by the fact that you feel the need to open new windows for PDF documents). So when you open a new window, I’m left with a useless blank window which I then have to close.
    I blame Adobe for being clueless about usability. Or at least more concerned with marketing.
    > I can never understand the logic in sending people away from your site.
    Er, you’re not sending them away froom your site. They are choosng to leave. If you open a new window, you make it less likely that they’ll go back to your site, because their back button will be broken and they won’t notice that your site is still open in a hidden window. If you want to open new windows (or, better still, tabs) for every site you visit, that’s your preference. If, however, the author forces new windows, it’s not your preference anymore.
    I certianly keep a selection of tabs open, but they’re not one tab per domain; they correspond to the way that I want to organise the avaliable resources.
    > in reality, designers and developers alike will no doubt find themselves in a situation with an employer or client where this is a requirement.
    Well, I guess designers and developers often find that the client has counter-productve requirements. Like the desire for a purple and mustard colour scheme, or the use of green and red as the only way of distinguishing important information. I have little dfficulty in believing that the ‘designers and developers’ would argue cognently that these were unreasonable requirements. But something that causes the web browser to break unexpectedly for millions of users and causes surprise and frustration for everyone else seems to be accepted wihout question as perfectly reasonable.
    Of course there’s no need to make navigating your client’s site a pleasant experience, but it seems somewhat counterproductive to unquestioningly employ techniques that have been shown to annoy and confuse users.
    For what it’s worth, if you must use new windows, target has the benefit of being easy to disable.

  18. Christian says:

    To support Keith, and respond to Darrel’s point (#16), I would suggest that PDFs always be opened in a new window.
    Time and again I have seen people open PDFs, they read them or print them and then, thinking they are in a new application, click on the “X” to close the PDF – and in doing so close their browser window.
    Heck, I even do it myself sometimes! Thus, for the sake of usability I would argue for PDFs always being opened in a new window.

  19. Darrel says:

    Time and again I have seen people open PDFs, they read them or print them and then, thinking they are in a new application, click on the “X” to close the PDF – and in doing so close their browser window.
    Yep. But that’s due to the stupidity of the PDF plug-in. Not everyone tolerates that stupidity on their own computer (especially OSX users).
    Adobe had this ego-centric idea that if they made a PDF plug in, the whole world would drop HTML in favour of PDFs. Instead, we now have these silly debates on the best way to deal with intrusive and unintuitive browser plug ins. *sigh*
    The best way to serve PDFs would be to stream them from the server, forcing the download of the PDF. Or, if you must, just give users two links:
    [PDF file] | [in new window]

  20. I don’t know if this has been covered in any of the posts above, but my “logic” reason for a link to open in a new window (note: a new window, not a pop-up) is that the link is going “outside” of the site itself, for example, if I link to apple.com at my personal blog, that will open in a new window, indicating to the surfer that he has left my site and entered someone elses.

  21. Iain says:

    Hi,
    One of the few reasons I believe you are justified in opening a new window is when it is part of your own site. For example, an image opened when you click on a thumbnail. You can use Javascript to control the size of the window so it does not obscure the original pane, which in turn avoids confusing your visitor. I dislike being required to patronise users but the sad truth is they really can be that clueless. :)

  22. Darrel says:

    ” that will open in a new window, indicating to the surfer that he has left my site and entered someone else”
    As others have stated, though, often they don’t ‘get’ that a new window appeared. For folks that always maximize all their windows, a new window just looks like the same window. Only difference is that now their back button is ‘broken’.

  23. Dante says:

    What I said about not using XHTML at all, I take it back: to thank all the web standards people who have helped me in various things and advocated me to use XHTML, I am redesigning my history website with XHTML 1.0 Transitional.

  24. James True says:

    When doing a lot of intranet coding for database back-ended websites, the only time at present I’ll use a target=”_blank” is when I’m pushing a job report into another blank window so the report can continue processing in that window.
    The report also usefully advises the client that this is what is happening (in case they have their browser maximized) and informs them they can minimize THIS window to return to the job input form and continue running new reports.
    As a final measure, so the client will be informed when their report is finished, it pops a simple javascript alert box which, if their window is minimized (at least on Windows), will flash the minimized icon in the task bar when the report is complete. They can then maximize and use their report.
    This has been a great usability boon for those folks who run a handful of standard reports on a daily or weekly basis as the reports can run while they’re off getting coffee. This helps a lot where all of our applications are web-based and our clients need to perform their own data-munging on the reports in Excel afterwards.
    Obviously a better usability concept would be to allow them to SAVE the input settings for a particular report and schedule when this report will be run on our web server. The scripts could then be run as a separate process without tying up Web Server resources, and the reports would be queued and waiting for the client when they requested them.

  25. Kris says:

    The whole deal against not opening new windows is the fact that it confuses visitors. Why isn’t anyone focussing on that? Make it clear that the link opens in a new window.
    Or wait, make it clear that it is an external link and mark it as such. Gone confusion, enter visitor awareness and their preference of how to deal with those links. Then suddenly, the author’s need for a new window disappears altogether.
    I use a small icon wherever I can to indicate such links. There should be a Simplequiz on that topic.

  26. Ed says:

    Another example of why you might need to launch new windows… I work at a university with a large web site (30,000+ pages). When linking from one department site to another, it’s quite often necessary to launch a new window if the user is to ever find their way back to the first site.
    The reason is simple – it’s impossible to create a navigation menu on each department site that would anticipate where the user may have come from in order to return them quickly. This is especially true when the user has to browse through multiple pages of content on the destination site. Clicking the BACK button multiple times is too confusing in that case.
    I would never argue that it’s ideal, more like a necessary evil. Tabbed browsing is obviously a solution when it’s available in all browsers down the road.

  27. What is research, but a blind date with knowledge.

  28. Lachlan Hunt says:

    There are absolutely no situations where it is acceptable from a user’s point of view for an author to have the ability control whether or not a link opens in a new window. If a user wants a new window or tab, let them; and if a user wants it in the same window, let them. I hate it when links open in a new window, without warning, and in such cases I immediately close the new it and force it to either open in a new tab or the same tab/window. At least if it’s going to be done, let the user know so they have a chance to override it.
    If anything, I would use a transitional doctype with the target attribute, simply because I have recently been forced to by my boss! In fact, we got into a fairly serious argument about it. My boss insists that every single external link must open in a new window, so I had to, unfortunately, switch everything from XHTML 1.0 strict to transitional and put up with the few links (most of it advertising – another thing I hate) that open in a new window.
    Also, I can use Chris Pederick’s userContent.css and the cursor changes to a cross-hair for links with target that open in a new window or frame, or move cursor for javascript: links, and a few other nice features he has in there.
    Finally, with the target attribute, it may eventually become possible to use CSS to override the links automatically, if the recent CSS3 Hyperlinks draft becomes a recommendation.

  29. DaveP says:

    Lachlan (#28):
    There are absolutely no situations where it is acceptable from a user’s point of view for an author to have the ability control whether or not a link opens in a new window.
    Quite frankly, that’s a pretty outrageous thing to say. I use the target attribute to launch a help page for an internal web app. I can only imagine the cries of protest if I happened to change this one day.
    To continue in support of Keith’s point (#12) and elaborate on Christian’s (#18) point: I too have done this, and witnessed several other users doing it as well. Is there any empirical evidence (meaning numbers stemming from user experience testing) that we’re in the minority here? Clearly, it’s much more frustrating to restart a browser and locate where you where than it is to close an extra window.
    As Kris (#25) says:
    The whole deal against not opening new windows is the fact that it confuses visitors.
    Do we have any evidence at all that this is the case? Or are we all spouting off based on our personal preferences?
    My answer (to the quiz that is) is to revert to transitional and use the target attribute.

  30. syn says:

    Excuse me, just test:P

  31. dan says:

    This comment is way too late, but I’d like to add my 2 cents worth anyway.
    To an extent, although not quite so emphatically, I’m with Lachlan. In general, it should be left up to the end-user to determine where they want a link to open. When coding for myself I have no qualms with keeping to XHTML Strict and forfeiting use of ‘target’, but it is good to know that should a particular client or application require it, that there is JavaScript and/or XHTML Transitional to fall back on.

  32. scaryfast says:

    I know this is probably overkill, but why not make use of the X in XHTML and define yourself a doctype that extends XHTML 1.0 Strict to allow the target attribute?