/*jQuery Browser Plugin* Version 1.2.0* 2008-05-26 14:39:29* URL: http://jquery.thewikies.com/browser* Description: jQuery Browser Plugin extends browser detection capabilities and can implements CSS browser selectors.* Author: Nate Cavanaugh, Minhchau Dang, & Jonathan Neal* Copyright: Copyright (c) 2008 Jonathan Neal under dual MIT/GPL license.*/(function($) {// Define whether Browser Selectors will be added automatically; set as false to disable.var addSelectors = true;// Define Navigator Properties.var p = navigator.platform;var u = navigator.userAgent;var b = /(Firefox|Opera|Safari|KDE|iCab|Flock|IE)/.exec(u);var os = /(Win|Mac|Linux|iPhone|Sun|Solaris)/.exec(p);var versionDefaults = [0,0];b = (!b || !b.length) ? (/(Mozilla)/.exec(u) || ['']) : b;os = (!os || !os.length) ? [''] : os;// Define Browser Properties.var o = jQuery.extend($.browser, {// Define the rendering clientgecko: /Gecko/.test(u) && !/like Gecko/.test(u),webkit: /WebKit/.test(u),// Define the browseraol: /America Online Browser/.test(u),camino: /Camino/.test(u),firefox: /Firefox/.test(u),flock: /Flock/.test(u),icab: /iCab/.test(u),konqueror: /KDE/.test(u),mozilla: /mozilla/.test(u),ie: /MSIE/.test(u),netscape: /Netscape/.test(u),opera: /Opera/.test(u),safari: /Safari/.test(u),browser: b[0].toLowerCase(),// Define the opperating systemwin: /Win/.test(p),mac: /Mac/.test(p),linux: /Linux/.test(p),iphone: /iPhone/.test(p),sun: /Solaris|SunOS/.test(p),os: os[0].toLowerCase(),// Define the classic navigator propertiesplatform: p,agent: u,// Define the 'addSelectors' function which adds Browser Selectors to a tag; by default <HTML>.addSelectors: function(e) {jQuery(e || 'html').addClass(o.selectors).removeClass('nojs');},// Define the 'removeSelectors' function which removes Browser Selectors to a tag; by default <HTML>.removeSelectors: function(e) {jQuery(e || 'html').addClass(o.selectors);}});// Define the Browser Client Version.o.version = {string: (o.msie)? (/MSIE ([^;]+)/.exec(u) || versionDefaults)[1]: (o.firefox)? (/Firefox\/(.+)/.exec(u) || versionDefaults)[1]: (o.safari)? (/Version\/([^\s]+)/.exec(u) || versionDefaults)[1]: (o.opera)? (/Opera\/([^\s]+)/.exec(u) || versionDefaults)[1]: 'undefined' };o.version.number = parseFloat(o.version.string) || versionDefaults[0];o.version.major = /([^\.]+)/.exec(o.version.string)[1];// Define the Browser with Client Version.o[o.browser + o.version.major] = true;// Define the Rendering Client.o.renderer = (o.gecko) ? 'gecko' : (o.webkit) ? 'webkit' : '';// Define the selector.o.selectors = [o.renderer, o.browser, o.browser + o.version.major, o.os, 'js'].join(' ');// Run the 'addSelectors' Function if the 'addSelectors' Variable is set as true.if (addSelectors) o.addSelectors();}(jQuery));