views:

250

answers:

13

I remember reading an article about when to use and when not to use pop ups (javascript alerts, pop up windows, etc.) in web development, but I can't find it anywhere. I thought the general rule was something along the lines of "if it's annoying to the user, don't use it."

What's the common consensus on this?

+9  A: 

Don't use pop-ups. Pop-up blockers exist for a reason.

From a user standpoint, it annoys me when sites continue to attempt to bring up pop-ups (even when legitimate) only to see it blocked. In most cases, a page could have been opened in a seperate window/tab, or information displayed in-line instead. I can't think of a single time I've went out of my way to allow a pop-up to be shown.

Will Eddins
+3  A: 

Don't mind using PopUps when something important is happening which needs the users attention (i.e. Account Deletion). But like everything: Sometimes, too much is just too much :)

Henrik P. Hessel
And this would be a confirm dialog, not really a pop-up.
Timothy Khouri
"pop ups (javascript alerts, pop up windows, etc.) "
Henrik P. Hessel
Right, I was saying anything that "pops up" (user's tend to just say that). :)
Rorschach
+1  A: 

Never. Use lightboxes.

Spencer Ruport
A: 

Never use them.

scrot
A: 

Popups are sometimes useful, i.e. when developing a GUI based program top-down I often use popups in stubbed procedures that have not been implemented. That way if I call one of those I get feedback that the method has not been implemented but can continue with the flow of control.

However, in a final product popups are extremely annoying and I cannot think of a case where they could not be better implemented some other way.

Larry Watanabe
+1  A: 

I much prefer an in-page solution like the jquery dialog: http://docs.jquery.com/UI/Dialog

But that's only if I can't avoid the use of a dialog. Normally, I can find somewhere to expand and/or show the requisite data or options.

Joel Martinez
+1  A: 

Never use popups in a while{true} loop with no break statement.

Legendary Pirate
+2  A: 

One thing I've found, is that 90% of users will never read anything in your popup dialogs.

If they click a button in your app labeled "Do FooBar", and you pop up a dialog, "WARNING: Doing FooBar will also remove all your Baz! [Do FooBar] [Cancel]", I guarantee you will get many support calls from people saying "Why did FooBar remove all my Baz!!!!?!?!?"

davr
Absolutely correct.
NickFitz
+3  A: 

One of the arguments I'm dealing with is the scenario of "User Saved X, show alert window stating Save was successful."

I'm arguing that it should just be a message displayed on the page, along with any other informative messages.

It just doesn't seem right to force the user to click "OK" on an alert window for a piece of trivial information.

Rorschach
Agreed, inform the user of something that actually requires their attention. Otherwise you inundate them with useless info, and they will ignore at their peril.
OMG Ponies
For situations like that, if a "Save was successful" window popped up, I would feel like I was required to pat the application on the head. "Yes, you did a good job, thank you for doing WHAT I TOLD YOU TO DO, I'm very proud, now GET OUT OF MY WAY." Display such information inline, because it is the *expected* result of some user action. A program shouldn't blow its own horn about working correctly.
Sarah Vessels
A: 

There is nothing inherently wrong with building an application, web or otherwise, that employs modal dialogs.

The problem is HOW they are implemented - native javascript windows as others have mentioned have been maligned for years for obvious overuse and bad intentions. I personally found them to be very limiting as well - there's no control to add buttons/etc.

Modal dialogs to be implemented using DIVs and CSS (see YUI) have all the benefits of presenting an interface that users recognize from desktop applications, and won't run afoul of popup blockers. But javascript needs to be enabled.

That said, spawning modal dialogs from other modal dialogs is bad design.

OMG Ponies
A: 

"Pop-up" or modal windows should only be used for enhancing the functionality of an application, never for advertising or getting a users attention. Information hierarchy is a Design problem, not one that can be fixed by disrupting the users ability to use the application. That said, one must explore the variety of modal species available, from the jQuery.growl to the "lightbox" like plug-ins.

Another alternative to modal alerts is to follow googles method in gmail of allowing the user to "undo" an action, instead of saying "Are you sure you want to do this?". This method eliminates the necessity of the modal window, giving the user an unobtrusive experience.

superUntitled
A: 

Never use alerts. I really hate them. Popups, be reasonable. Make sure its opened by the user so they don't immediately close it.

I would recommend making a modal window using jQuery. Just try your best to make it prettier and less obtrusive.

Ben Shelock
A: 

There are a lot of articles about the problems with popups on the web.

A very common argument is that users don't even read them after a while and just click by reflex. Often they will recommend an undo option instead.

Here's one such article, but finding others won't be hard.

krdluzni