var Pages = function() {
this.VERSION = "1.0.0";
this.pageScrollElement = 'html, body';
this.$body = $('body');
this.setUserOS();
this.setUserAgent();
}
Pages.prototype.setUserOS = function() {
var OSName = "";
if (navigator.appVersion.indexOf("Win") != -1) OSName = "windows";
if (navigator.appVersion.indexOf("Mac") != -1) OSName = "mac";
if (navigator.appVersion.indexOf("X11") != -1) OSName = "unix";
if (navigator.appVersion.indexOf("Linux") != -1) OSName = "linux";
this.$body.addClass(OSName);
}
Pages.prototype.setUserAgent = function() {
if (navigator.userAgent.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile/i)) {
this.$body.addClass('mobile');
} else {
this.$body.addClass('desktop');
if (navigator.userAgent.match(/MSIE 9.0/)) {
this.$body.addClass('ie9');
}
}
}
Pages.prototype.isVisibleXs = function() {
(!$('#pg-visible-xs').length) && this.$body.append('<div id="pg-visible-xs" class="visible-xs" />');
return $('#pg-visible-xs').is(':visible');
}
Pages.prototype.isVisibleSm = function() {
(!$('#pg-visible-sm').length) && this.$body.append('<div id="pg-visible-sm" class="visible-sm" />');
return $('#pg-visible-sm').is(':visible');
}
Pages.prototype.isVisibleMd = function() {
(!$('#pg-visible-md').length) && this.$body.append('<div id="pg-visible-md" class="visible-md" />');
return $('#pg-visible-md').is(':visible');
}
Pages.prototype.isVisibleLg = function() {
(!$('#pg-visible-lg').length) && this.$body.append('<div id="pg-visible-lg" class="visible-lg" />');
return $('#pg-visible-lg').is(':visible');
}
Pages.prototype.getUserAgent = function() {
return $('body').hasClass('mobile') ? "mobile" : "desktop";
}
答案 0 :(得分:0)
如果您正在进行OOP,您希望将使用信息的代码放在该类中的类中。这是一个设计原则,因此它不是严格意义上的,但它可能会帮助您编写好的和可读的代码。
轻微的性能提升,因为您每次使用时都不必找到身体节点。
isVisibleXs
以奇特的方式编写,为您提供简短的代码,但很难阅读。你可以改写它:
Pages.prototype.isVisibleXs = function() {
if($('#pg-visible-xs').length > 0) {
this.$body.append('<div id="pg-visible-xs" class="visible-xs" />');
}
return $('#pg-visible-xs').is(':visible');
}
或者,用简单的英语:如果还没有ID,请在身体上附加ID为pg-visible-xs
的div。返回它是否可见。