Can I identify a browser as SeaMonkey using JavaScript?

Discussion of features in Seamonkey
Post Reply
User avatar
Pim
Posts: 2215
Joined: May 17th, 2004, 2:04 pm
Location: Netherlands

Can I identify a browser as SeaMonkey using JavaScript?

Post by Pim »

In a webpage, can you find out if the browser is SeaMonkey or not?

So far, the only differences I found were features that the user can easily change in about:config. For instance the user agent string.
Therefore my question is, are there differences that can be detected with JavaScript which don't depend on about:config settings?
Groetjes, Pim
User avatar
patrickjdempsey
Posts: 23686
Joined: October 23rd, 2008, 11:43 am
Location: Asheville NC
Contact:

Re: Can I identify a browser as SeaMonkey using JavaScript?

Post by patrickjdempsey »

The most popular way is feature detection, but feature detection only gets you as far as knowing you are using over X version of Gecko. Firefox and SeaMonkey are nearly identical on features. But even where they are different, because those features can be disabled lack of a feature support is only weak negative evidence, not strong positive evidence. For instance, you could check for the existence of the Primetime Content Decryption Module or OpenH264 Video Codec via a plugin query, and their presence would tell you that you are looking at Firefox, but lack of those features could mean any 3rd-party Gecko browser, OR Firefox with those disabled.

IMO, folks who change the UA string have made a conscious decision to break browser compatibility so they shouldn't be worried about. I suppose the real question is, why do you want to identify SeaMonkey users? Is there a technical reason, or just curiosity?
Tip of the day: If it has "toolbar" in the name, it's crap.
What my avatar is about: https://addons.mozilla.org/en-US/seamonkey/addon/sea-fox/
User avatar
Pim
Posts: 2215
Joined: May 17th, 2004, 2:04 pm
Location: Netherlands

Re: Can I identify a browser as SeaMonkey using JavaScript?

Post by Pim »

I was afraid you'd say that. I was hoping to look in about:config for the existence of entries like mail.* but apparently that's impossible. Things like checking for plugins (like the DOM inspector) also don't work. Oh well.

Anyway, I've had to change my useragent string on various sites. Especially Google Maps, which refuses to work properly if the browser doesn't call itself Chrome. (And do I love the general.useragent.site_specific_overrides feature!)

But to answer your question, mainly curiosity. There are some sites which say my browser may not be compatible; and they keep on saying so if I change the useragent string to advertise Firefox compatibility; so I wonder what more they do than check said useragent string. What else is there?
Groetjes, Pim
barbaz
Posts: 1504
Joined: October 1st, 2014, 3:25 pm

Re: Can I identify a browser as SeaMonkey using JavaScript?

Post by barbaz »

Pim wrote:I was hoping to look in about:config for the existence of entries like mail.* but apparently that's impossible. Things like checking for plugins (like the DOM inspector) also don't work. Oh well.

I would NEVER want a webpage looking that deep into any piece of software I'm running! :omg:

Pim wrote:Anyway, I've had to change my useragent string on various sites. Especially Google Maps, which refuses to work properly if the browser doesn't call itself Chrome.

Maybe it wants the OS of your UA string to be Windows or OS X?
Also, try change your UA string to be *exactly* a Firefox UA? I've seen many sites break because of the SeaMonkey tag on the end of the user-agent string, regardless of Fx compatibility advertising.

Pim wrote:(And do I love the general.useragent.site_specific_overrides feature!)

+1, bigtime :D
User avatar
therube
Posts: 21685
Joined: March 10th, 2004, 9:59 pm
Location: Maryland USA

Re: Can I identify a browser as SeaMonkey using JavaScript?

Post by therube »

are there differences that can be detected with JavaScript which don't depend on about:config settings?

Yes.


BrowserSpy.dk is the place where you can see just how much information your browser reveals about you and your system.

Panopticlick tests your browser to see how unique it is based on the information it will share with sites it visits.
Fire 750, bring back 250.
Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.19) Gecko/20110420 SeaMonkey/2.0.14 Pinball CopyURL+ FetchTextURL FlashGot NoScript
User avatar
Pim
Posts: 2215
Joined: May 17th, 2004, 2:04 pm
Location: Netherlands

Re: Can I identify a browser as SeaMonkey using JavaScript?

Post by Pim »

barbaz wrote:
Pim wrote:(...) Google Maps, which refuses to work properly if the browser doesn't call itself Chrome.

Maybe it wants the OS of your UA string to be Windows or OS X?
Also, try change your UA string to be *exactly* a Firefox UA?

Doesn't work. The Google Maps "system requirements" page says you can use the latest version of Chrome, Firefox, IE or Safari (and since I'm on Linux, that means IE and Safari are off) and then mentions the operating systems, specifically saying "Linux (not using Firefox)".
So there we have it. Chrome only.
Groetjes, Pim
barbaz
Posts: 1504
Joined: October 1st, 2014, 3:25 pm

Re: Can I identify a browser as SeaMonkey using JavaScript?

Post by barbaz »

Did you try changing the OS in your UA string?

Code: Select all

Mozilla/5.0 (Windows NT 6.2; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0


EDIT I would suggest you clear cache & cookies (& localStorage etc, but I think it's automatic with cookies?) before checking.
User avatar
patrickjdempsey
Posts: 23686
Joined: October 23rd, 2008, 11:43 am
Location: Asheville NC
Contact:

Re: Can I identify a browser as SeaMonkey using JavaScript?

Post by patrickjdempsey »

Well for one, it would appear that you have chosen to disable the Firefox compatibility option for your user agent. That would certainly make any websites looking for Firefox + version number fail. Preferences > Advanced > HTTP Networking > Advertise Firefox compatibility. Like I said, making alternations to the UA string is making a conscious decision to break browser compatibility. The above is the default setting for a reason, and it's the primary reason that SeaMonkey now works on hundreds of websites it used to fail miserably on years ago.

Personally, Google Maps street view has been crashing for about a year with my video card, but it's finally fixed in Firefox 42, so I'm hopeful of SM 2.39!
Tip of the day: If it has "toolbar" in the name, it's crap.
What my avatar is about: https://addons.mozilla.org/en-US/seamonkey/addon/sea-fox/
Post Reply