Ярлик на клавіатурі Chrome, щоб призупинити виконання сценарію


48

Чи є комбінація клавіш у Google Chrome, яка порушить виконання сценарію? (Рівнозначно натисканню кнопки ||"Призупинити виконання сценарію" на панелі "Сценарії розробників".)

Я хотів би скористатися інструментами Dev для перевірки елемента в його стані миші; mouseleaveкод буде очевидно працювати , якщо я намагаюся на насправді натисніть на кнопку паузи!

Відповіді:


56

Поки я не знайшов точного вирішення цієї проблеми, я придумав однолінійку, яку можна помістити на сторінку (або вставити в консоль Javascript) для досягнення своєї мети:

jQuery(window).keydown(function(e) { if (e.keyCode == 123) debugger; });

Це спричинить призупинення виконання при натисканні F12.

( debuggerце твердження JavaScript, яке примушує крапку.)


Оновлення: у інструментах Dev є багато вбудованих ярликів (натисніть F1для списку), але ви повинні бути зосереджені у вікні інструментів Dev, щоб вони працювали. Призупинення виконання сценарію - це F8(при перегляді вкладки "Джерела", як у Chrome 45) або Ctrl+ /.

Наведений вище вкладиш може бути корисним, якщо вам потрібно зупинитися на сторінці перед тим, як призупинити.


6
F8 працює лише тоді, коли ви перебуваєте на сторінці "Джерела" в DevTools (Chrome 40)
netvope

1
Чи працює CTRL + / під Linux або щось таке? Оскільки, здається, CTRL + \ працює під Windows, а згідно з іншими, це буде CMD + \ для MAC.
djabraham

1
Той самий ефект, але не вимагаючи jQuery:window.addEventListener('keydown', e => { if (e.keyCode === 123) debugger })
pau.moreno

інколи гарячі клавіші подій закривають елемент, який ви хочете перевірити, setTimeout(function() { debugger; }, 1000)тут допомагає
ципт

14

Довідкові списки клавіатурних скорочень Google для "Призупинення / відновлення виконання сценарію":

  • F8або Ctrl+ \(Windows)
  • F8або Cmd+ \(Mac)

Існують простіші способи перевірити речі в непарних станах, наприклад, наведення вказівника чи активного. Спочатку знайдіть вузол DOM на панелі «Елементи» інструментів Chrome Dev. Тепер ви можете або клацнути правою кнопкою миші вузол, і подивитися на "Стан елемента сили" у контекстному меню, або вибрати вузол і подивитися на вкладці Стилі та знайти піктограму пунктирної коробки з мишкою у верхньому правому куті (поруч із значком + / плюс, який дозволяє вам додати нове правило CSS до element.styleвибраного елемента).

Коли ви активуєте один із цих станів, лівий край панелі елементів отримує невелике коло, що вказує на те, що ви перекрили природний стан елемента в цьому рядку.


3
F8 не працює в головному вікні браузера, лише у вікні Dev Tools. Використання стану елемента елемента не допомагає, коли це сценарій, який слухає події (а не лише CSS).
josh3736

3
F8 працює в головному вікні веб-переглядача, але вам потрібно відкрити вікно інструментів розробки на вкладці Джерело у фоновому режимі.
reor

8

Я написав невелике невелике розширення для Chrome, яке дозволяє натиснути кнопку Пауза на клавіатурі, щоб призупинити виконання JavaScript

Як його отримати:

Використання:

  1. Тримайте інструменти для розробників хрому відкритими
  2. Натисніть pause/breakна клавіатурі

1
@Flu, я додав його до Веб-магазину Chrome. Насолоджуйтесь
SpareBytes

Це спрацювало чудово - я зміг зробити паузу, щоб я міг динамічно вивчити HTML, вставлений у сторінку. Використання Інструментів для розробників не спрацювало, оскільки HTML був видалений кодом, коли він втратив фокус.
Кенні Евітт

На моїй клавіатурі немає кнопки "Призупинити / перервати", тому мені довелося зіставити її з іншою клавішею. Що не відразу було очевидним для мене, це те, що вам потрібно утримувати нову комбінацію клавіш, КОЛИ Ви натискаєте кнопку «Зберегти комбо».
Джаспер Сіті

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.