What's the best way to feature detect whether a user is using a browser that supports advanced multi select controls?
For example, multi-select using the native select element on Desktop is terrible, so we've decided to enhance it with select2 (a plugin to enhance native select elements). On mobile devices (e.g. iOS / Android), the native multi-select element is quite nice, and arguably better than select2, so we've decided to stick with the native experience. What's the best way to feature detect the type of select control that's used?
User agent sniffing doesn't work well, because lots of Desktop tools emulate mobile devices but still render the OS native select controls.
Examples of what I mean...
Markup
<select multiple>
<option value=""></option
...
</select>
Desktop:
Desktop Chrome emulating Android device:
Real Android: