Your problem is you are trying to write an application in a web browser. Don't do it. The idiots that write web browsers are creating toolsets to try to entice you...but don't believe them!! It's crap. Web browsers can't do applications. Why would you spend your time trying to piece together a bunch of hodge-podge tools that barely work at all, never ever conform to anyone's specifications except the particular developer who implemented the feature, and leave you completely unable to do ANYTHING.
You don't believe me? Look at this:
https://bugzilla.mozilla.org/show_bug.cgi?id=190515
Comment#3:
"I deliberately did not add a confirmation dialog, because I think they're
annoying and detract from the user experience."
Yeah I know. You THINK. To HELL with the docs at
http://developer.netscape.com/docs/manu ... tm#1201822
They're outdated. So...where are the new ones that say you're right my man? Or did you write those? I know that what you think is important. So I guess the rest of us are just screwed. After all, there are hackers and crackers out there that REALLY WANT to close down your browser window. I bet their favorite is when you keep coming back so they can keep closing it. That's so great. Of course the one thing that sucks from their perspective is that if they close your window, well, you're gone. They can't do anything else nasty. But still, you THINK it's a bad idea and you THINK it's not worth a dialog box so screw it. Ok buddy you and your ego can have it your way.
Exactly. Why is it like this? Because it's the web man! You can't be trusted! Don't try to close any windows or remove any toolbars or anything. The user wants to hit back? Guess what, the user gets to hit back! If you have to write 20,000 more lines of code to try to deal with all the states that will arise from the inherently stateless design, that's your problem not the browser's. You want to test your code against IE, Firefox, Opera, you name it? Good luck man. OH you think you're ok because your company only uses IE...I see. Well, just make sure you don't write too much code because when IEvNext comes out you're going to have to be rewritin' it. I bet if you try REALLY HARD you could probably piece together enough HTML, JAVASCRIPT, XML, PHP etc to get an application that only KIND OF SUCKS. It MIGHT be able to do SOME of what a real application can do and if your users are really gentle and don't push any buttons while the page is still loading and they don't hit back and forward instead of your controlled navigation buttons maybe things will work sometimes. Oh I'm sure you can deal with that. All it takes is lots more creative code! Come on buddy you can be creative right? You don't have a wife or family or anything right? -- I know you want to write code 20 hours a day. Maybe more!! And what do we love even more than writing code? Testing! Especially regression testing. I just love it when I fix code for IE that breaks in Firefox. And then when I fix the Firefox, it breaks the Palm Blazer, and after that, I go fix Palm Blazer and IE is broken. Soooo FUN!!!!! I'd rather do that than play Zelda any day. I don't need to ride my bike or go for a walk with the dog. Not necessary.
But how stupid are we? Are we seriously dumb enough to keep doing this? I ask myself every day that same question. "Web Applications" are the stupidest thing I've ever seen in my technical career. I have never before seen so many people so deluded. It's a DUMB IDEA folks and that's all there is to it.
You want to make a real application? Stop screwing around with .NET Schmuck and AJAX wipe. We don't need no javascriptation. We don't need no code control. Shut the crap up and go use Java. Java Applets rock. With Java you no longer have to come up with "creative" ways to do the obvious simple stuff. You no longer have to screw around with trying to get your UI to render in 3 different browsers. You have a REAL toolkit, with real ability to get the permissions needed to do ANYTHING YOU WANT. Full GDI capability, you can render anything you want and it will load right up. Use web services (ala ajax but without the lowercase and STUPID j -- I'm talking aJax - now we're on to something). Why would anyone want to keep using piece of crap HTML and piece of crap javascript to try to write a reasonable application? Are we just masochistic? I can see no other option. It's asinine to screw around with making a real application with such bullshit tools. It's like trying to build a space shuttle with some pieces of leather, some cow brains, spit, urine and a few rocks. Stupid.
Don't waste your time with browsers. Don't be stupid. You think the guy that invented HTML intended for you to be screwing around with it like that? It's a really bad case of evolution gone haywire. We are off the trail. It's ok, check your compass, retrace your steps. I'm sure we can get back on track. I think it started somewhere back around
http://yoursite.com/index.html. That seems to me like the first wrong move.
Run in a VM like Java and flash and once again you can stop screwing around and start writing code that matters. You will not catch me building another app for a browser ever again in my life. I hope you, dear reader, are smart enough to turn 180 right now.
So although for now I am paid to be just as pissed of as you are, my answer is screw browsers. When this project is over I'm done with this bullshit. If you're smart that will be your answer to.
Just two cents from one experienced web developer who's sick and tired of it. The web, the internet, it's awesome and I really mean that. But if you want to write a business application, there are better ways to do it!
Believe it or not I'm not taken to rants but I am just fed up. Up to my ears in bullshit.