Если вы используете WebStorm Javascript IDE , вы можете просто открыть свой проект из WebStorm в своем браузере. WebStorm автоматически запустит сервер, и вы больше не получите никаких этих ошибок, потому что теперь вы получаете доступ к файлам с разрешенными / поддерживаемыми протоколами (HTTP).
Вот так просто:
if($.browser.msie && $.browser.version=="6.0") alert("Im the annoying IE6");
Обновить
Обратите внимание, что $. Browser удален из jQuery 1.9
Если вам все еще нужно использовать $ .browser в jQuery 1.9 (или других устаревших функциях), попробуйте jQuery-migrate ( https://github.com/jquery/jquery-migrate/ - http://code.jquery.com/jquery-migrate-1.2.1.js )
Испытайте это:
jQuery.each(jQuery.browser, function(i, val) {
$("<div>" + i + " : <span>" + val + "</span>")
.appendTo(document.body);
});
, если Вам нужно больше информации, относятся к этому:
jQuery проверяет на функции, а не "браузеры". Тем не менее можно использовать метод jQuery.support для обнаружения то, к чему пользовательский браузер способен.
Устаревшие методы (Не используют)
http://docs.jquery.com/Utilities/jQuery.support $ .browser $ даст Вам, сводка которых функции поддерживаются который браузеры. Беря те данные, Вы разработаете пару условных проверок, чтобы определить, является ли используемый браузер Вашим целевым браузером или нет.
http://docs.jquery.com/Utilities/jQuery.browser.version - то, как
ОТРЕДАКТИРОВАЛ: Исправленная ссылка от Douglas
http://api.jquery.com/jQuery.browser/#jQuery.browser.version
, который я имею в виду, если у Вас была старая версия не последние 1.3...
кроме того, другая положительная сторона - то, что с JQuery, Вы, как предполагается, не волнуетесь о версии. JQuery действительно показывает тестирование и обрабатывает всю эту выдумку для Вас. Волнение по поводу версий и платформ является симпатичным 1999
Вы также можете напрямую спросить IE.
<!--[if lte IE 6]>
<script type="text/javascript">
var isRunningIE6OrBelow = true;
</script>
<![endif]-->
Очень хороший способ обнаружить IE:
if ('v'=='\v') {
welcome to IE ))
}
К сожалению, он не может распознать свою версию, но не всегда необходим.
Еще один хороший момент заключается в том, что с JQuery вам не нужно беспокоиться о версии.
Это не поможет, если вы используете jquery для исправления ошибки рендеринга CSS в IE6.
«Хотя вряд ли jQuery.browser будет удален, все усилия использовать jQuery.support и соответствующая функция должно быть обнаружено ».
Так что я говорю, продолжайте и используйте его. Они должны поддерживать обратную совместимость со сценариями, которые все еще используют метод сниффинга пользовательского агента.
Я не уверен, что он должен работать в этом пути, но вы получаете доступ к this.value
и this.name
в одном и том же обратном вызове. Предполагается, что этот
ссылается на event.currentTarget
, который в данном случае является элементом SELECT.
В этом случае this.value
будет неопределенным, но вместо этого можно попробовать использовать $ (this) .val ();
.
Вы пытались утешить переменные?
-121--4067287-Как указано выше, сеансы, файлы cookie и IP-адреса неэффективны - злоумышленник может манипулировать всеми.
Если вы хотите предотвратить атаки грубой силы, то единственное практическое решение - основывать количество попыток на предоставленном имени пользователя, однако обратите внимание, что это позволяет злоумышленнику осуществлять DOS сайта, блокируя действительные пользователи от входа в систему.
например.
$valid=check_auth($_POST['USERNAME'],$_POST['PASSWD']);
$delay=get_delay($_POST['USERNAME'],$valid);
if (!$valid) {
header("Location: login.php");
exit;
}
...
function get_delay($username,$authenticated)
{
$loginfile=SOME_BASE_DIR . md5($username);
if (@filemtime($loginfile)<time()-8600) {
// last login was never or over a day ago
return 0;
}
$attempts=(integer)file_get_contents($loginfile);
$delay=$attempts ? pow(2,$attempts) : 0;
$next_value=$authenticated ? 0 : $attempts + 1;
file_put_contents($loginfile, $next_value);
sleep($delay); // NB this is done regardless if passwd valid
// you might want to put in your own garbage collection here
}
Обратите внимание на то, что эта процедура, как написано, утекает информацию о безопасности, т.е. кто-то, атакующий систему, может увидеть, когда пользователь войдет в систему (время ответа на попытку злоумышленников снизится до 0). Можно также настроить алгоритм так, чтобы задержка вычислялась на основе предыдущей задержки и метки времени в файле.
HTH
C.
-121--1018877-Я часто проверяю версию браузера. Метод .support великолепен, но он не помогает, когда нужно скрыть выбранные элементы при наложении. Отсутствует «поддержка выбора элементов управления с окнами». Вам просто нужно проверить версию браузера, поэтому я бы сказал, что ошибка в сторону метода .support, где вы можете, и использовать .browser, когда это необходимо.