Safari Recreates Proprietary Extensions
I was just reviewing the list of updates made to Safari 2.0.1 and was shocked to see the amount of proprietary extensions that Safari has implemented. I’m a little mixed in my feelings about this. Afterall, if it weren’t for recreating proprietary functionality, we wouldn’t have the wonderful XMLHttp object in every browser. It also seems that copying proprietary Mozilla functionality is much more socially acceptable than copying IE functionality…well, Safari has done both. Check out this list of fixes and additions:
- Implemented
showModalDialog()from IE. - Implemented
document.elementFromPoint()from IE. - Fixed
outerHTMLto work with<img/>(outerHTMLis from IE). - Implemented
DOMParserfrom Mozilla.
So what about it? Is it okay to recreate proprietary functionality and create a pseudo-standard in doing so?
Disclaimer: Any viewpoints and opinions expressed in this article are those of Nicholas C. Zakas and do not, in any way, reflect those of my employer, my colleagues, Wrox Publishing, O'Reilly Publishing, or anyone else. I speak only for myself, not for them.
Both comments and pings are currently closed.




4 Comments
I think pseudo standards are fine, if it keeps the wheels of creativity turning.
The alternative questions are, what is worth turning into a standard, why, and how do you decide?
I suppose the answer depends what everyone is doing with all this functionality.
Standards are certainly useful for HTML/CSS/basic Javascript, because they are the lowest common denominator, and the subject/content of a large majority of web pages only needs these. Hence a standard maintains accessibility.
Ineed, when I read about purist accessibility approach of HTML and CSS only, wherever possible, then all this functionality would seem almost irrelevant/forbidden? to the large majority of web pages.
However, as soon as you start talking about more complicated functionality, the pool of potential users who actually need/look for this functionality on the client is possibly much reduced, and aslo the range of requirements they may have becomes much more varied/customised, so the need for/possibility of creating/demand for a standard becomes much reduced.
So I would be interested to understand who is using it all and for what purposes: presumably for the large part – HTML editors, presenting tabular data, web page functionality that genuinely benefits from being AJAX driven, or where the whole purpose of the web page is to showcase DHTML functionality (i.e. the actual subject of the web site is its DHTML functionality, in which case accessibility cannot be preserved).
Taking it further, effectively, when you start using all that extra functionality, you are creating mini-applications in the browser environment.
In practice have only found myself using the full range of functionality in web browsers to create myself mini-applications, which are not web pages at all, which I use for work.
Effectively the browser is a rapid application development environment.
If more complex browser based applications are driving the way forward, then clearly there is an infinite range of ways in which applications could be implemented, which will make it almost impossible to dictate a single standard: vis Bindows, XUL, XAML, etc etc.
As long as accessibility for the majority of web pages is maintained, I would suggest then, that it is better to let pseudo standards evolve by themselves, depending on the perceived needs/requirements of the complex user, rather than dictate them. But every so often, consider capturing some of the evolved developments in a standard/update to a standard, if the requirement/use is sufficiently stable.
Julian Turner on September 30th, 2005 at 3:31 am
thank god that safari has included the showModalDialog function of the internet explorer. and i hope that a basic standard is maintained hence forth in all the browsers.
vikram on December 14th, 2005 at 10:56 am
I don't really think it's a standard if someone just copies someone else's work…
Nicholas C. Zakas on December 14th, 2005 at 8:11 pm
Although showmodaldialog is included in safari, I think they have missed off the option for the modal window to use window.returnvalue – it always seems to come back "undefined"
chris a on August 22nd, 2006 at 11:19 am
Comments are automatically closed after 14 days.