Heim > Web-Frontend > js-Tutorial > Hauptteil

Die JQuery-Erweiterung verwendet die Methode $.browser

巴扎黑
Freigeben: 2017-07-08 10:00:53
Original
1859 Leute haben es durchsucht

Aufgrund von jquery 1.9.0 oder höher hat jquery die Unterstützung für $.browser entfernt und verwendet die $.Unterstützung, um den Browsertyp zu bestimmen. Infolgedessen meldeten viele frühere Plug-Ins Fehler

„Uncaught TypeError: Cannot read property 'msie' of undefined“.

Es gibt viele online. Die Lösung ist:

Bestimmen Sie den Browsertyp:

<span style="white-space:pre">	</span>$.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase());
	$.browser.webkit = /webkit/.test(navigator.userAgent.toLowerCase());
	$.browser.opera = /opera/.test(navigator.userAgent.toLowerCase());
	$.browser.msie = /msie/.test(navigator.userAgent.toLowerCase());
Nach dem Login kopieren



<🎜 Der -Ausdruck nach dem >-Zeichen gibt „true/false“ zurück, was direkt zum Ersetzen des ursprünglichen $.browser.msie usw. verwendet werden kann.


Überprüfen Sie, ob es IE6 ist:
// Alt

<span style="white-space:pre">	</span>if ($.browser.msie && 7 > $.browser.version) {}
Nach dem Login kopieren

// Neu

<span style="white-space:pre">	</span>if (&#39;undefined&#39; == typeof(document.body.style.maxHeight)) {}
Nach dem Login kopieren

Überprüfen Sie, ob es sich um IE 6-8 handelt:

<span style="white-space:pre">	</span>if (!$.support.leadingWhitespace) {}
Nach dem Login kopieren
********************************************* ******* ***************************

Die Idee, die wir unten übernehmen, ist die Verwendung von

Vererbung-Mechanismus Die jquery 1.11.1-Version wurde um die Unterstützung der $.browser-Methode erweitert, wodurch der Zweck der Kompatibilität mit früheren Komponenten erreicht wurde.

jQuery.extend({
	browser: function() 
	{
		var
	    rwebkit = /(webkit)\/([\w.]+)/,
	    ropera = /(opera)(?:.*version)?[ \/]([\w.]+)/,
	    rmsie = /(msie) ([\w.]+)/,
	    rmozilla = /(mozilla)(?:.*? rv:([\w.]+))?/,    
	    browser = {},
	    ua = window.navigator.userAgent,
	    browserMatch = uaMatch(ua);

	    if (browserMatch.browser) {
	        browser[browserMatch.browser] = true;
	        browser.version = browserMatch.version;
	    }
	    return { browser: browser };
	},
});

function uaMatch(ua) 
{
        ua = ua.toLowerCase();

        var match = rwebkit.exec(ua)
                    || ropera.exec(ua)
                    || rmsie.exec(ua)
                    || ua.indexOf("compatible") < 0 && rmozilla.exec(ua)
                    || [];

        return {
            browser : match[1] || "",
            version : match[2] || "0"
        };
}
Nach dem Login kopieren
Speichern Sie den obigen Code in jquery -

browser.js und verwenden Sie es.



Das obige ist der detaillierte Inhalt vonDie JQuery-Erweiterung verwendet die Methode $.browser. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage