2015-12-16 22 views
9

Chcę zobaczyć, jaki kod modyfikuje element DOM na stronie internetowej, więc ustawię punkt przerwania w Chrome, klikając prawym przyciskiem myszy element na karcie Elementy inspektora DevTools i wybierając opcję "Przerwij ..." -> "Modyfikacje podprzestrzeni". Skrypt modyfikuje element, gdy strona jest ładowana (a nie po), więc chcę zachować punkt przerwania DOM i odświeżyć stronę.Jak zachować punkty wstrzymania przeglądarki Chrome DOM na odświeżaniu strony?

Proces zapisywania punktów przerwania w kodzie javascript wydaje się nie mieć zastosowania do punktów przerwania DOM.

breakpoints

+0

AFAIK nie jest to możliwe, ale myślę, że przypadek użycia jest stałe, powinno się otworzyć bilet na to -> crbug.com –

+2

Otwarty problem: https://code.google.com/p/chromium/issues/detail? id = 571519 – celeritas

Odpowiedz

6

Na razie dodałem debugger; linię zanim jakikolwiek inny kod działa, dodał przerwania DOM i kontynuował.

+0

Zrobiłem sobie przyjemność. Miło, dzięki! – jhrr

1

W Chrome punkty przerwania DOM nie są zachowywane po odświeżeniu, są odrzucane, a następnie odtwarzane po zdarzeniu onload. Zobacz bug report 571519, a ten komentarz z tego raportu:

Zachowujemy punkty przerwania DOM po przeładowaniu, ale punkty przerwania są przywracane tylko w przypadku zdarzenia onload. Jeśli spodziewamy się, że punkt przerwania zostanie wywołany wcześniej lub zostanie ustawiony na węzeł dodawany leniwie, punkt przerwania nie zostanie przywrócony. Powinniśmy to naprawić.

To obejście:

  1. wstrzymać JavaScript, albo ze zwykłego przerwania lub debugger; linii JavaScript
  2. usunąć wszystkie punkty przerwania DOM i dodać punkty przerwania DOM, które są potrzebne
  3. wznawianie.