3
I want my Google Chrome site to have width: Xpx;
and in Safari have width: Ypx;
, this is possible?
3
I want my Google Chrome site to have width: Xpx;
and in Safari have width: Ypx;
, this is possible?
1
You can do this in many ways...
var BrowserDetect = {
init: function () {
this.browser = this.searchString(this.dataBrowser) || "Other";
this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "Unknown";
},
searchString: function (data) {
for (var i = 0; i < data.length; i++) {
var dataString = data[i].string;
this.versionSearchString = data[i].subString;
if (dataString.indexOf(data[i].subString) !== -1) {
return data[i].identity;
}
}
},
searchVersion: function (dataString) {
var index = dataString.indexOf(this.versionSearchString);
if (index === -1) {
return;
}
var rv = dataString.indexOf("rv:");
if (this.versionSearchString === "Trident" && rv !== -1) {
return parseFloat(dataString.substring(rv + 3));
} else {
return parseFloat(dataString.substring(index + this.versionSearchString.length + 1));
}
},
dataBrowser: [
{string: navigator.userAgent, subString: "Chrome", identity: "Chrome"},
{string: navigator.userAgent, subString: "MSIE", identity: "Explorer"},
{string: navigator.userAgent, subString: "Trident", identity: "Explorer"},
{string: navigator.userAgent, subString: "Firefox", identity: "Firefox"},
{string: navigator.userAgent, subString: "Safari", identity: "Safari"},
{string: navigator.userAgent, subString: "Opera", identity: "Opera"}
]
};
BrowserDetect.init();
document.write("você está usando <b>" + BrowserDetect.browser + "</b> na versão <b>" + BrowserDetect.version + "</b>");
var BrowserDetect = {
init: function () {
this.browser = this.searchString(this.dataBrowser) || "Other";
this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "Unknown";
},
searchString: function (data) {
for (var i = 0; i < data.length; i++) {
var dataString = data[i].string;
this.versionSearchString = data[i].subString;
if (dataString.indexOf(data[i].subString) !== -1) {
return data[i].identity;
}
}
},
searchVersion: function (dataString) {
var index = dataString.indexOf(this.versionSearchString);
if (index === -1) {
return;
}
var rv = dataString.indexOf("rv:");
if (this.versionSearchString === "Trident" && rv !== -1) {
return parseFloat(dataString.substring(rv + 3));
} else {
return parseFloat(dataString.substring(index + this.versionSearchString.length + 1));
}
},
dataBrowser: [
{string: navigator.userAgent, subString: "Chrome", identity: "Chrome"},
{string: navigator.userAgent, subString: "MSIE", identity: "Explorer"},
{string: navigator.userAgent, subString: "Trident", identity: "Explorer"},
{string: navigator.userAgent, subString: "Firefox", identity: "Firefox"},
{string: navigator.userAgent, subString: "Safari", identity: "Safari"},
{string: navigator.userAgent, subString: "Opera", identity: "Opera"}
]
};
BrowserDetect.init();
if (BrowserDetect.browser === "Chrome") {
$("body").css('background','lightblue');
}
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<body>
</body>
Another alternative would be to use modernizr to determine the resources available in the client’s browser, with modernizr you can write styles arbitrarily according to the availability of resources, look at the example
.loginBox {
box-shadow:0 10px 10px rgba(0, 0, 0, 0.3);
}
.no-boxshadow .loginBox {
border: 1px solid #CCC;
border-bottom: 3px solid #CCC;
}
If the appeal box shadow no browser support, alternative style will be .no-boxshadow . loginBox
You can combine any of the features mentioned above with Yepnopejs to load css or js files under some special condition.
yepnope({
test : Modernizr.fontface && Modernizr.canvas && Modernizr.cssgradients,
yep : 'normal.js',
nope : ['polyfill.js', 'wrapper.js']
});
BrowserDetect.init();
yepnope({
test : BrowserDetect.browser == Chrome,
yep : 'normal.js',
nope : ['polyfill.js', 'wrapper.js']
});
You answered how to identify, not how to do what he asked.
Thanks for the feedback, this is in the middle of the reply, "See this example with the function above" if (Browserdetect.browser === "Chrome") { $("body"). css('background','lightblue'); } .
I think it would be interesting to demonstrate the correct way in each method. Yes, I was the one who gave the downvote =v... I will reevaluate the answer =)
Thank you, I am reformulating the answer, I agree with your point of view.
Beautiful! Exactly what I thought and more complete...
Browser other questions tagged css google-chrome safari
You are not signed in. Login or sign up in order to post.
By javascript I believe you can determine which file to load for each browser... examples you can adapt to your need: http://prodwebdigital.blogspot.com.br/2013/06/identificando-browser-para-uso-de-css.html and http://tableless.com.br/identificando-os-ies/
– Rafael Withoeft