The reason the checks are different is that Microsoft requests it, as they feel IE11 is more like other browsers than IE, as they've removed nearly all of the legacy features that IE used to have. So my question was really, for IE11, should it follow the has('ie') path, or the non-IE path?