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: "Edge", identity: "MS Edge"},
{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: "Opera", identity: "Opera"},
{string: navigator.userAgent, subString: "OPR", identity: "Opera"},
{string: navigator.userAgent, subString: "Chrome", identity: "Chrome"},
{string: navigator.userAgent, subString: "Safari", identity: "Safari"}
]
};
BrowserDetect.init();
var bv= BrowserDetect.browser;
if( bv == "Chrome"){
$("body").addClass("chrome");
}
else if(bv == "MS Edge"){
$("body").addClass("edge");
}
else if(bv == "Explorer"){
$("body").addClass("ie");
}
else if(bv == "Firefox"){
$("body").addClass("Firefox");
}
$(".relative").click(function(){
$(".oc").toggle('slide', { direction: 'left', mode: 'show' }, 500);
$(".oc1").css({
'width' : '100%',
'margin-left' : '0px',
});
});
^
-
Приоритета Арифметической операции (унарное отрицание) *
, /
\
Mod
+
, -
(сложение в двоичной системе / вычитание) &
Not
And
Or
Xor
Eqv
Imp
Приоритета Логической операции Порядка
Приоритета Сравнения: Sams Преподают Себе Visual Basic 6 за 24 Часа — Приложение A: Приоритет Оператора =
<>
<
>
<=
>=
Like
, Is
Это зависит от того, являетесь ли Вы в отладчике. Действительно. ну, вид.
Круглые скобки на первом месте, конечно. Затем arithmateic (+, - *,/, и т.д.). Затем сравнения (>, < =, и т.д.). Затем логические операторы. Прием является порядком выполнения в данном уровне приоритета, не определяется. Учитывая следующее выражение:
If A < B And B < C Then
Вам гарантируют эти <
, операторы неравенства будут оба оценены перед логическим And
сравнение. Но Вам не гарантируют, какое сравнение неравенства будет выполняться сначала.
IIRC, отладчик выполняется слева направо, но скомпилированное приложение выполняется справа налево. у меня могли быть они назад (это было долгое время), но важная вещь, они отличаются. Фактический приоритет не изменяется, но порядок выполнения мог бы.
РЕДАКТИРОВАНИЕ: это - мой совет для нового кода! Но Oscar читает чужой код, так должен понять это так или иначе. Я предлагаю ручную тему VBA Приоритет Оператора . VBA является 99%-м эквивалентом VB6 - и вычисление выражения является 100%-м эквивалентом. Я вставил информацию о логическом операторе здесь.
Логические операторы оценены в следующем порядке приоритета:
Not And Or Xor Eqv Imp
тема также объясняет приоритет для операторов сравнения и арифметических операторов.
я предложил бы, как только Вы выяснили precendence, Вы вставляете круглые скобки, если нет некоторое серьезное основание не отредактировать код.