Resources By Subject
Technical
What works in which browser and what doesn't.
by Ciff Wootton
Scroll on down for a list of every function and which browsers they work with. (editor's note: As many of us have learned, JavaScript can be a bit of a problem if you're trying to develop something with cross-browser compatibility. This chart allows you to look up objects and see which browsers they are compatible with. Good luck.)
September 01, 1999
This is a prety long list so we have split it up over several pages. They are still a bit slow to load due to their size.
A - event
event - layer
layer - screen
screen - window
window - window
Here's a list of the percentage of JavaScript features that work in each of the popular browsers. Sadly, it seems that only about 31% of the features work with both 3.0 and above browsers. I know site developers who have decided simply not to use JavaScript at all rather than mess with the compatibility issues.
IE 3 & 4
243
31.68%
Nav 3 & 4
373
48.63%
IE4 & NAV 4
425
55.41%
All 4 browsers
240
31.29%
A further caveat: This suggests areas that you should check rather than just go on my say so. Some features could get implemented at intermediate releases such as 4.04 where they weren't available at 4.03 or might be available only on certain platforms. So we are simplifying things a little when we talk about Nav 3 vs. Nav 4.
There is a Web Standards pressure group that is trying to get some groundswell of public opinion going to make Microsoft and Netscape toe the line and at least support the W3C and other published standards. They are at http://www.webstandards.org/ and are called 'The Web Standards Project'.
Here's the whole, frightening list a through event :
Method or Property
IE 3
IE 4
Nav 3
Nav 4
Notes
escape()
Limited
Yes
Yes
Yes
Unicode supported in IE 4
eval()
Yes
Yes
Yes
Yes
Crashes Nav 2 on Win 3.1
getClass()
No
No
Yes
Yes
Used for access to Java applet classes
Infinity
No
Yes
No
No
isFinite()
No
Yes
No
Yes
isNaN()
No
Yes
Yes
Yes
NaN
No
Yes
No
No
parseFloat()
Yes
Yes
Yes
Yes
parseInt()
Yes
Yes
Yes
Yes
taint()
No
No
Deprecated
Deprecated
Deprecated in Nav 4
unescape()
Limited
Yes
Yes
Yes
Unicode supported in IE 4
untaint()
No
No
Deprecated
Deprecated
Deprecated in Nav 4
Functions
Method or Property
IE 3
IE 4
Nav 3
Nav 4
Notes
apply()
No
No
No
Yes
arguments[]
Deprecated
Deprecated
Deprecated
Deprecated
Deprecated in favour of the argvuments object
arity
No
No
No
Yes
Requires language switch to select JS 1.2 for it to work
caller
Deprecated
Deprecated
Deprecated
Deprecated
Deprecated - do not use
length
No
Yes
Yes
Yes
prototype
No
Yes
Bugged
Yes
Bugged in Nav 3
toString()
Yes
Yes
Yes
Yes
Anchor Object
Method or Property
IE 3
IE 4
Nav 3
Nav 4
Notes
name
No
Yes
No
Yes
text
No
No
No
Yes
x
No
No
No
Yes
y
No
No
No
Yes
Applet Object
Method or Property
IE 3
IE 4
Nav 3
Nav 4
Notes
<public fields of applet>
No
Yes
Yes
Yes
<public methods of applet>()
No
Yes
Yes
Yes
Arguments Object
Method or Property
IE 3
IE 4
Nav 3
Nav 4
Notes
callee
No
Yes
No
Yes
caller
No
No
No
Bugged
Bugged in Nav 4
length
No
Yes
Yes
Yes
Array Object
Method or Property
IE 3
IE 4
Nav 3
Nav 4
Notes
concat()
No
Yes
No
Yes
join()
No
Yes
Yes
Yes
length
No
Yes
Yes
Yes
pop()
No
No
No
Yes
push()
No
No
No
Yes
reverse()
No
Yes
Yes
Yes
shift()
No
No
No
Yes
slice()
No
Yes
No
Bugged
Negative positions not available in Nav 4
sort()
No
Yes
Yes
Yes
splice()
No
No
No
Bugged
Some bugs in Nav 4
toString()
No
Yes
Yes
Yes
unshift()
No
No
No
Yes
Boolean Object
Method or Property
IE 3
IE 4
Nav 3
Nav 4
Notes
toString()
No
Yes
Yes
Yes
Button Object
Method or Property
IE 3
IE 4
Nav 3
Nav 4
Notes
blur()
Yes
Yes
Yes
Yes
click()
Yes
Yes
Yes
Yes
focus()
Yes
Yes
Yes
Yes
form
Yes
Yes
Yes
Yes
name
Yes
Yes
Yes
Yes
onblur
Yes
Yes
Yes
Yes
onclick
Limited
Yes
Yes
Yes
Enhanced in JS 1.1
onfocus
Yes
Yes
Yes
Yes
type
No
Yes
Yes
Yes
value
Bugged
Yes
Yes
Yes
Possibly buggy in IE 3
Checkbox Object
Method or Property
IE 3
IE 4
Nav 3
Nav 4
Notes
blur()
Yes
Yes
Yes
Yes
checked
Yes
Yes
Yes
Yes
click()
Yes
Yes
Yes
Yes
defaultChecked
Yes
Yes
Yes
Yes
focus()
Yes
Yes
Yes
Yes
form
Yes
Yes
Yes
Yes
name
Yes
Yes
Yes
Yes
onblur
Yes
Yes
Yes
Yes
onclick
Limited
Yes
Yes
Yes
Enhanced in JS 1.1
onfocus
Yes
Yes
Yes
Yes
type
No
Yes
Yes
Yes
value
Bugged
Yes
Yes
Yes
Possibly buggy in IE 3
Crypto Object
Method or Property
IE 3
IE 4
Nav 3
Nav 4
Notes
random()
No
No
No
Yes
Available in Nav 4.04 onwards
signText()
No
No
No
Yes
Available in Nav 4.04 onwards
Date Object
Method or Property
IE 3
IE 4
Nav 3
Nav 4
Notes
getDate()
Yes
Yes
Yes
Yes
Number of digits varies
getDay()
Yes
Yes
Yes
Yes
getFullYear()
No
Yes
No
Yes
getHours()
Yes
Yes
Yes
Yes
getMilliseconds()
No
Yes
No
Yes
getMinutes()
Yes
Yes
Yes
Yes
getMonth()
Yes
Yes
Yes
Yes
getSeconds()
Yes
Yes
Yes
Yes
getTime()
Yes
Yes
Yes
Yes
getTimezoneOffset()
Yes
Yes
Yes
Yes
getUTCDate()
No
Yes
No
Yes
getUTCDay()
No
Yes
No
Yes
getUTCFullYear()
No
Yes
No
Yes
getUTCHours()
No
Yes
No
Yes
getUTCMilliseconds()
No
Yes
No
Yes
getUTCMinutes()
No
Yes
No
Yes
getUTCMonth()
No
Yes
No
Yes
getUTCSeconds()
No
Yes
No
Yes
getYear()
Yes
Yes
Y2K bugged
Y2K bugged
Not Y2K compliant
parse()
Yes
Yes
Yes
Yes
setDate()
Yes
Yes
Yes
Yes
setFullYear()
No
Yes
No
Yes
setHours()
Yes
Yes
Yes
Yes
setMilliseconds()
No
Yes
No
Yes
setMinutes()
Yes
Yes
Yes
Yes
setMonth()
Yes
Yes
Yes
Yes
setSeconds()
Yes
Yes
Yes
Yes
setTime()
Yes
Yes
Yes
Yes
setUTCDate()
No
Yes
No
Yes
setUTCFullYear()
No
Yes
No
Yes
setUTCHours()
No
Yes
No
Yes
setUTCMilliseconds()
No
Yes
No
Yes
setUTCMinutes()
No
Yes
No
Yes
setUTCMonth()
No
Yes
No
Yes
setUTCSeconds()
No
Yes
No
Yes
setYear()
Yes
Yes
Yes
Yes
toGMTString()
Deprecated
Deprecated
Deprecated
Deprecated
Deprecated in JS 1.2 in favour of toUTCString - Do not use
toLocaleString()
Yes
Yes
Yes
Yes
toString()
Yes
Yes
Yes
Yes
toUTCString()
No
Yes
No
Yes
UTC()
Yes
Yes
Yes
Yes
Bugged in Nav 2
valueOf()
No
Yes
Yes
Yes
Document Object
Method or Property
IE 3
IE 4
Nav 3
Nav 4
Notes
activeElement
No
Yes
No
No
alinkColor
Yes
Yes
Yes
Yes
all[]
No
Yes
No
No
anchors[]
No
Yes
No
Yes
applets[]
No
Yes
Yes
Yes
bgColor
Yes
Yes
Yes
Yes
captureEvents()
No
No
No
Yes
charset
No
Yes
No
No
children[]
No
Yes
No
No
classes
No
No
No
Yes
clear()
Deprecated
Deprecated
Deprecated
Deprecated
Deprecated - do not use
close()
Yes
Yes
Yes
Yes
contextual()
No
No
No
Yes
cookie
Yes
Yes
Yes
Yes
defaultCharset
No
Yes
No
No
domain
Yes
Yes
Yes
Yes
elementFromPoint()
No
Yes
No
No
embeds[]
No
Yes
Yes
Yes
expando
No
Yes
No
No
fgcolor
Yes
Yes
Yes
Yes
forms[]
Yes
Yes
Yes
Yes
getSelection()
No
No
No
Yes
handleEvent()
No
No
No
Yes
height
No
No
No
Yes
ids
No
No
No
Yes
images[]
No
Yes
Yes
Yes
lastModified
Yes
Yes
Yes
Yes
layers[]
No
No
No
Yes
linkColor
Yes
Yes
Yes
Yes
links[]
Yes
Yes
Yes
Yes
location
Deprecated
Deprecated
Deprecated
Deprecated
Deprecated in JS 1.1 in favour of document.URL
open()
Yes
Yes
Yes
Yes
parentWindow
No
Yes
No
No
plugins[]
No
Yes
Yes
Yes
readyState
No
Yes
No
No
referrer
Bugged
Yes
Yes
Yes
Broken in IE 3
releaseEvents()
No
No
No
Yes
routeEvent()
No
No
No
Yes
tags
No
No
No
Yes
title
Yes
Yes
Yes
Yes
URL
No
Yes
Yes
Yes
vlinkColor
Yes
Yes
Yes
Yes
width
No
No
No
Yes
write()
Yes
Yes
Yes
Yes
writeln()
Yes
Yes
Yes
Yes
This is a prety long list so we have split it up over several pages. They are still a bit slow to load due to their size.
A - event
event - layer
layer - screen
screen - window
window - window