I probably should have commented on an earlier PR, but I think I prefer transport names to be defined with enabled flags in a single object like so:

```JavaScript
transports: [
    {
        name: "longPolling",
        enabled: true
    },
    {
        name: "foreverFrame",
        enabled: !window.EventSource && !window.document.commandLineTest && navigator.appName === "Microsoft Internet Explorer"
    },
    {
        name: "serverSentEvents",
        enabled: !!window.EventSource
    },
    {
        name: "webSockets",
        enabled: !!(window.WebSocket && !window.document.commandLineTest && (!ios || ios6))
    }
],
runWithAllTransports: function (fn) {
    this.runWithTransports(this.transports, fn);
},
runWithTransports: function (transports, fn) {
    $.each(transports, function (_, transport) {
        if (tranport.enabled) {
            fn(transport.name);
        }
    });
},
```