davidn: (skull)
[personal profile] davidn
I know that to a lot of people the sort of Firefox/general open source community seems like a terrifying place full of anti-corporate zealots with smelly beards, but in the end there's a very good reason for its existence. Today at work I spent four hours researching, experimenting and working around Internet Explorer bugs, on a new part of our system to allow people to select the members of teams that would vote on changes to a document. And as everyone who doesn't use it is making one six-billionth of my life easier, I thought I'd guilt trip people into converting over in case there's anyone reading this that still uses the abomination.

This is an entirely selfish thing - I'm ignoring the way that virtually every other browser is at least marginally faster than IE, free to download and more customizable (and in Firefox's case, leaks memory like a colander, but that's not as much of a disadvantage as you might think) because everyone's been told that already, and just concentrating on the advantage to me. And I'm not sure of the average technical Internet knowledge of my friends list, but I'll try not to talk down to anyone, provided that they haven't scrolled well away from this post by now.

The idea of the new form was simple (or so I thought). Our property-editing summary page gives you lists of the current people assigned to each team. From there, you can click "Edit team" to pop a window open where you can transfer more people into the team or take others out, then click "Submit", whereupon it'll close again, transferring the new contents of the "Selected" box into the original one. Dead easy (or it would be if most of Javascript didn't look like $A().$('${sel2}');).

But my problem (from Internet Explorer's point of view) was that I was using a rather handy way of telling web forms what to do called DOM, or Document Object Model. This lets you treat each part of a web page like individual objects, adding, deleting and editing them as you need. And for the most part, Microsoft is fine with you doing that, but on some computers (it doesn't even have the decency to be a consistent problem) you won't be able to move things between objects on different windows, and you'll get an error message saying "No such interface supported", which is naturally about as helpful as a water pistol in the Towering Inferno.

The way to fix this is apparently to re-register a couple of DLLs that may or may not be installed incorrectly, but you can hardly ask people to do that if they're the type that struggle with copy and pasting. Instead, I learned that Microsoft knew about their slight shortcomings in the field of sensible ways to handle webpages and had introduced a hackish fix - a made-up "innerHTML" property of each object on the page that you can use to directly edit the <option value="it hurts">My old man's a dustman<option>-type tags that you'll see if you go to View/Page Source up on your menu bar. So the solution was obviously (though slightly inconveniently) to write the bits that needed to be transferred into the page manually and stick them in like that.

Except... not only do they have a workaround to do something that everyone else has managed, they didn't get the workaround right either. Somewhere, it contains a bug that means that items in a select box may or may not be written correctly, and this rendered it pretty much useless for my purposes. In the end I resorted to detecting if someone was using IE, then building an array of arrays of strings that could hold everything I needed on the page, passing the whole thing under the table to the parent page through Javascript where IE couldn't mess it up and then cobbling together some items there from the collected data. Meanwhile, everything else can happily do it in about a hundred fewer lines.

Of course, the really frustrating thing is that our clients will never see this. Neither do most people who use IE and can't understand what everyone's complaining about. But it's the scourge of web developers everywhere for the reasons I've outlined above and more. So can you not do me a favour and download something else instead anyway? It'll take a minute of your time and I think you'll find it's rather better for other reasons, too. I don't even much care what you switch to - just as long as you realize that there's no reason on Earth to use IE7 unless you are actually being forced at gunpoint. Remember, like I said before you stopped reading this - everyone that switches over is making my existence just a tiny bit less stressful.

There, that should do it.

Date: 2008-04-12 12:36 pm (UTC)
From: [identity profile] kibet.livejournal.com
I have hidden the IE7 update so it would not automatically do it. The no tabs is more the turn off. I like to have multiple windows open so I can alt+tab between them as I am not a huge fan of a mouse. If there was one that I could just turn tabs off or even set it to open a new window as default so I don't need to use them then I will be fine. I am not a fan of search bars as I can go for a site to iy. Much like why I do not use the icons at the top other than the Stop and Home (or going back multiple pages, I use the keyboard for just going back one or two.

Will have a look at link, if nothing jumps out then I will keep with IE6 until I am forced to change when I get a new laptop.

Date: 2008-04-20 02:05 am (UTC)
From: [identity profile] starfishchris.livejournal.com
> I like to have multiple windows open so I can alt+tab between them as I am not a huge fan of a mouse.

You can switch between tabs in a window using Ctrl+Tab. Works in Firefox and IE and it's a lot tidier too, since you don't have to worry about any other applications open or the order changing as with Alt+Tab. And if you want to refer to a specific tab you can press Ctrl + 1 for the first tab, Ctrl + 2 for the second, etc. Tabs are for keyboard users too!

Expand Cut Tags

No cut tags

May 2020

S M T W T F S
     12
3456789
1011121314 15 16
171819 20 212223
24252627 28 2930
31      

Most Popular Tags

Style Credit

Page generated Aug. 10th, 2025 06:11 pm
Powered by Dreamwidth Studios