Если вы готовы принять помехи для пользователя, можно использовать the debugger statement, так как он доступен в всех основных браузерах.
Замечание: если пользователи вашего приложения заинтересованы в использовании консоли, они, вероятно, знакомы с инструментами разработчика и не удивятся тому, что он появится.
Короче говоря, оператор действует как точка останова и будет влиять на пользовательский интерфейс , только если средства разработки браузера размещены на.
Вот пример теста:
<body>
<p>Devtools is <span id='test'>off</span></p>
<script>
var minimalUserResponseInMiliseconds = 100;
var before = new Date().getTime();
debugger;
var after = new Date().getTime();
if (after - before > minimalUserResponseInMiliseconds) { // user had to resume the script manually via opened dev tools
document.getElementById('test').innerHTML = 'on';
}
</script>
</body>
ОТКАЗ: Я первоначально опубликовал этот точный ответ на this possibly duplicate question
Вы не можете это сделать. – epascarello
Раньше вы знали, была ли открыта консоль IE, существует ли 'window.console'. –
@epascarello - Я отказываюсь верить в это. Например, как минимум вы можете сравнить высоту окна с высотой окна просмотра и сделать некоторые выводы из этого. Не идеально, но, конечно, не невозможно. – broofa