Input detection - prediction

This table compares the results of my manual tests with the result of my prediction script. A red cell means that the script does not match the manual test.

Each cell contains two values; the first is my manual test and the second my prediction script. So color false / true means that my manual tests indicate the color type is not supported, but my script indicates it is.

Success rate: %

False information

email and url

Safari does not support them but pretends it does in all ways. This is undetectable.

Android WebKit doesn’t support them; Opera Classic does. Neither supports validationMessage. I decided that if there is no validationMessage the browser does not support the types. This sacrifices Opera Classic for Android WebKit, which I think is justified due to their market shares.

number

Safari Mac does not support it but pretends it does in all ways. This is undetectable.

date-related and color

Android WebKit has serious problems here, and the Hello World test helps, though not 100%.

In this test I set the input's value to Hello World. If the browser accepts and returns that value, the input type is not supported.

This does not help everywhere; especially not on Samsung Android WebKit. Also, it doesn’t help Firefox’s weird false negatives, or the problems with week Safari, Samsung Chromium, and BB10 have.