Seriously Sucky Safari

by Matt Mecham on June 12, 2007

in Programming

I spent the greater half of last week tearing out clumps of hair in sheer frustration over an annoying bug in Safari.

It wasn’t the kind of bug that you could really code around. I can’t get into specifics but it was to do with iFrames and javascript. The bug caused a significant problem with how the application I’m working on functions.

This was the beginning of four days of javascript hell. The end result of which is a lot of recoding and a fair amount of patching to get it sort of working. A search on the ‘net revealed that it was a known bug in Apple’s WebKit which has been fixed already in the next version which isn’t due out until the next version of OS X ships.

It transpires that this abomination of a web browser is now being inflicted on Windows users now. I can’t wait to see which bugs show up in Windows that don’t show up in OS X.

I love Apple. I really do. But Safari is a constant thorn in my side and I wish it would go away. I’d love for Apple to stop dicking around with their WebKit and use Gecko instead.

What finished me off is that I’ve had zero problems with IE 7 and my javascript code.

Safari: The Web’s Best Browser? I’ll allow my SVN commit messages tell you what I think:

{ 12 comments… read them below or add one }

1 James June 12, 2007 at 3:46 pm

I don’t have any problems with Safari as a browser… but the version of WebKit that’s in it seems to have a hell of a lot problems with JS stuff. It’s really really infuriating… and if the version of WebKit isn’t updated to one that gets rid of these bugs before Leopard (which basically looks like what will happen) then everyone’s stuck with trying to develop for it. And of course not everyone will upgrade right away…

*sigh*

2 Matt Mecham June 12, 2007 at 3:56 pm

That’s the most infuriating thing. You’re stuck with the bugs until the next version of OS X. I hope that now it’s available as a separate download it’ll mean that fixes will mean version increments which will be available for download more often.

I considered opening a javascript alert with warning that things won’t work if it detected Safari.

3 James June 12, 2007 at 4:17 pm

I do feel for you – I don’t do much javascript as it is (I’m just learning really), but having seen (the earlier betas of IP.D, etc) I know there’s a lot of javascript and DOM in there, and it must be hell to try and get to work with Safari.

I think I’ve said this in the thread on IPS as well – the fact that Apple seem to not want to issue updates (it can’t be that hard to issue a Safari update that increases the rendering engine, surely…) is the thing that really makes me dislike Safari. The “web developers” out there that won’t test sites in Safari (there’s plenty of big sites that don’t work as expected) probably aren’t going to once they realise just how many problems it throws up.

This is not taking into account that Safari 3 may offer improvements that overcome some (a lot?) of the bugs, but I wouldn’t know. It’d just be a lot less hassle, if like you said, they gave up on WebKit and threw Gecko in Safari instead.

4 Matt Mecham June 12, 2007 at 4:26 pm

The JS in IP.Nexus / IP.Dynamic has become very complex. We’ve eased some of the load by using the fantastic “prototype” library which makes a lot of common things very easy.

This Safari bug was a brick wall, though. Really, really annoying.

5 Matt Mecham June 12, 2007 at 4:29 pm

.. not to mention even more annoying that the bug had been fixed for months yet the release of the fixed version is at this point not known.

6 Tim Dorr June 12, 2007 at 4:33 pm

You do know about WebKit, right? Grab a nightly and use that: http://nightly.webkit.org/ It even includes Drosera, a wonder Javascript debugger, which I’m sure would be quite useful to you :)

7 Matt Mecham June 12, 2007 at 4:38 pm

Yeah, that’s how I confirmed that the bug was fixed in the most recent WebKit.

8 Peter Goodman June 12, 2007 at 5:15 pm

Almost always I’ve liked the way Safari works, and normally it will work with all my scripts. However, almost every time I want to do something that is either an original idea or a different approach to an existing javascript problem, I hit a brick wall. For example, I remember working on deep linking for flash and I used javascript. Safari was particularly annoying for this because a quick google found that I would have needed to put the entire page within an iframe to get it to work. Ugh.

It really is the IE 6 of macs.

9 `Scotty` June 13, 2007 at 11:13 pm

Matt just wait till the final version of Safaria 3 and OSX Leopard a whole new set of patches you might have to make because of the new software :s

Leopard is ganna be pretty cool though are you going to upgrade to it? In brighter news of course :P

10 Mert June 16, 2007 at 10:49 am

If you really want to see something really buggy, try Safari 3.0 Beta for Windows :D

11 John McAllister August 23, 2007 at 8:13 pm

Would somebody help me to find out why my website won’t work in Safari.

I’ve built a site that displays panoramic pictures, using a substantial bit of JavaScript.

It’s all compliant and works well in IE5.5+ and Firefox.

It just grinds to a halt in Safari; so I am constantly told.

Would a kind person run my site, http://www.panavista.eu/ , and let me know what, if any, error messages are logged by the dubugger.

Nice people, sweet things, lovely helpful techie geeky types… please

12 John McAllister August 23, 2007 at 8:15 pm

Forgot to include my email in the previous post…
spoim@blueyonder.co.uk

Leave a Comment

Connect with Facebook

{ 1 trackback }

Previous post:

Next post: