starway you have great technical knowledge of javascript and I don't deem your solution not good enough. Actually I'd give you a star if I had a problem and you came up with a solution like yours.
What I dislike is using JavaScript for things that it just wasn't meant to do or that other technologies do far better(I am saying that despite JavaScript being my language of choice). For example having an order form can be improved using JavaScript but created from scratch and doing everything with JavaScript is not always the fastest most cost effective solution for an online store.
My concern is that if coman wants to sell things online he needs people to trust his site. Popups of any sort tend to discourage buyers except if it is made understandable for the end user a popup is in most cases very annoying. If he does need to use only JavaScript (no access to server side tech like PHP) a popup link could be improved using a warning for the user :
"open easy print page in new window"
rather then :
"print page"
But what I would like to stress is that big web sites selling tons of merchandise who have spent money on usability studies show that streamlining the process is a good way of making the user confortable.
When you go to the store at the mall. Let's say Future Shop to buy a new remote control for you TV. You could break down in steps what you do.
- arrive at store,
- go to TV remote section,
- choose a remote (using the lower-price-tag technique),
- bring it to cashier,
- see the total amount displayed one last time (just in case),
- pay for the item,
- leave with receipt
- arrive home and watch TV
Now you would not like it if you had to go through these steps now would you :
- arrive at store,
- go to TV remote section,
- choose a remote (using the click-to-find method),
- bring it to cashier and leave item there so that you can go elsewhere and verify the total amount,
- come back from verify price section,
- pay for the item,
- wait two weeks before receiving your remote
- turn off computer and walk to tv to turn on.
Internet automatically means you have to wait for the item to arrive. That is something you can't change. It's not as gratifying as buying the item in the store.
Streamlining the process is the way to go. When buying online you should have well delimited visual cues for your users and as little as possible deviation from the transaction. After all if you want to sell something you should make it as simple as possible for people to do so. It is to your advantage.
here is what I recommend :
- arrive at store
- home page has the lowest price of each section displayed, select the remote with VCR,TV,
- when you click on it you arrive at spec sheets, you like what you see,
- click on one of the two "buy right away" buttons (one on the top of the page and one at the bottom because that is where people would look),
- fill in credit card info because Internet Explorer told you it was secure to do so,
- click "confirm purchase",
- get order number in an easily printable version (acts as a receipt).
- of course wait for delivery.
Using PHP this would be very easy, ASP too I imagine. But using solelly JavaScript the end user will feel as though something is weird.
You see that printing here occurs at the end once everything is done and confirmed like when you go to the store, you get the printed receipt only after you buy. To me that seems normal and that means I will buy. Gary
Haran