Schwebeelement in Chrome untersuchen?

106

Ich versuche mithilfe der Entwicklertools von Chrome anzuzeigen, wie QuickInfos auf einer Website strukturiert sind. Selbst wenn ich mit der Maus über das Element schwebe und das Element "inspiziere", wird für den Tooltip im HTML-Code nichts angezeigt. Ich weiß, dass ich den Stil einstellen kann :hover, aber ich kann das HTML oder CSS des Tooltips immer noch nicht sehen.

Irgendwelche Ideen?

Skitterm
quelle
Sie können andere Lösung hier für Chrome & Firefox
Muhammed Abdelfattah

Antworten:

80

Ich habe tatsächlich einen Trick gefunden, um dies mit den Twitter Bootstrap-Tooltips zu tun. Wenn Sie die Entwicklungswerkzeuge (F12) auf einem anderen Monitor öffnen, bewegen Sie den Mauszeiger über das Element, um den Tooltip aufzurufen, und klicken Sie mit der rechten Maustaste, als würden Sie "Element überprüfen" auswählen. Wenn Sie dieses Kontextmenü geöffnet lassen, verschieben Sie den Fokus auf die Entwicklungswerkzeuge. Das HTML für den Tooltip sollte neben dem Element angezeigt werden, für das es einen Tooltip im HTML gibt. Dann können Sie es betrachten, als wäre es ein anderes Element. Wenn Sie zu Chrome zurückkehren, verschwindet der HTML-Code.

Irgendwie komisch, aber es hat bei mir funktioniert, also dachte ich mir, ich würde es teilen.

Justin Chmura
quelle
12
Na ja, aber nicht auf dem Mac.
Actimel
2
- Schritt 1: Überprüfen Sie das Element, das den Tooltip generiert, um die Chrome Dev-Tools aufzurufen. - Schritt 2: Während Sie mit der Maus über das Element fahren, wird Ihr Tooltip angezeigt. Öffnen Sie ein neues Fenster, ohne das Element zu verlassen (Befehlstaste-N auf dem Mac, Strg-N an anderer Stelle). - Schritt 3: Ziehen Sie das neue Fenster unter das alte Fenster, damit Sie den Tooltip weiterhin sehen können, und bewegen Sie den Cursor in den Elementinspektor . - Schritt 4: Scrollen Sie nach unten, wo Ihr Tooltip an das DOM angehängt wird. Klicken Sie auf das Element, um dessen Stil anzuzeigen.
pgblu
2
PS: Dies funktioniert nicht für QuickInfos, die über Javascript aus dem eigenen Titelattribut des Elements generiert werden, wie dies beispielsweise bei SO der Fall ist. Diese Tooltips verwenden ein Standard-Styling.
pgblu
Dies half mir für Tooltips in Kendo
k29
1
Der Trick: Gehen Sie zuerst zur Registerkarte Quelle. Dann können Sie Javascript mit der Taste F8 anhalten. Die Pause-Taste ist dort mit der Verknüpfung von F8 / Strg + \ (Die Antwort von @Rajan auf dieser Seite)
rostamiani
85

Diese Lösung funktioniert ohne zusätzlichen Code.

Drücken Sie command-option-j, um die Konsole zu öffnen. Klicken Sie auf die Schaltfläche zum Anzeigen des Fensters in der oberen rechten Ecke der Konsole, um die Konsole in einem anderen Fenster zu öffnen.

Bewegen command-`Sie den Mauszeiger im Chrome-Fenster über das Element, das das Popover auslöst, drücken Sie, wie oft Sie sich auf die Konsole konzentrieren müssen, und geben Sie dann ein debugger. Dadurch wird die Seite eingefroren, und Sie können das Element auf der Registerkarte Elemente überprüfen.

joeyyang
quelle
6
Diese Antwort ist wirklich nett. Minimaler Code, kein jQuery- oder Dual-Monitor-Setup.
Großbritannien Kolka
1
Es funktionierte! Anfangs wurden aufgrund einer Fehlkonfiguration die Standard-HTML-Tooltips und nicht die Bootstrap-Tooltips angezeigt. Nachdem Sie dieses Problem behoben hatten, funktionierte Ihre Lösung. Vielen Dank.
DFB
2
Wenn Sie beim Schreiben debuggerauf die Konsole den Fokus verlieren , können Sie zusätzlich drücken, alt+tabwährend Sie mit der Maus über das Element fahren. Es funktionierte für Chromium-Apps unter Windows.
Orcun
1
Das war eine großartige Antwort!
Nobita
Auf der Seite mit den Chrome DevTools-Tastaturkürzeln wird angegeben, dass es sich um ein Steuerelement + `anstelle eines Befehls +` handelt, um sich wieder auf die Konsole zu konzentrieren. Vielleicht hat es sich geändert.
rinat.io
85

F8 wird das Debuggen anhalten.

Fahren Sie mit der Maus über den Tooltip und drücken Sie, F8während er angezeigt wird.

Sie können jetzt den Inspektor verwenden, um das CSS anzuzeigen.

Dwjohnston
quelle
4
Mir gefällt, wie Sie in Stackoverflow, solange Sie weiter nach unten scrollen, diese wirklich gute Antwort finden, die weitaus besser ist als die anderen. Dies ist einfach und ohne zusätzliche Skripte.
Alexander Dixon
2
F8 hat aus irgendeinem Grund nicht für mich funktioniert, aber die Pause ist auch an Strg- \
Bryan Larsen
Beste Lösung hier
NiallMitch14
Weder <kbd> F8 </ kbd> noch <kbd> AltGr </ kbd> - <kbd> RCtrl </ kbd> - <kbd> ß </ kbd> auf meinem deutschen Tastaturlayout pausiert den Debugger.
Testen
63

Sie müssen lediglich den Tooltip als solchen erzwingen

$('.myelement').tooltip('open');

Jetzt wird der Tooltip unabhängig vom Schwebezustand angezeigt.

Scrollen Sie unten im DOM nach unten, wo Sie das Markup sehen sollten.

Update siehe cneuros Kommentar zu Bootstrap 3.

$('.myelement').tooltip('show');

Update siehe Marko Grešaks Antwort für Chrome und anscheinend auch Safari, $0kann als Verknüpfung für das aktuell ausgewählte Element verwendet werden. Dies scheint auch in Safari zu funktionieren.

$($0).tooltip('show')
Adam Grant
quelle
1
$ ('. myelement'). Tooltip ('open') hat bei mir funktioniert.
Tekumara
6
Ab Bootstrap 3 ist dies jetzt .tooltip('show') getbootstrap.com/javascript/#tooltips-methods
cneuro
2
In Chrome kann auf das aktuell ausgewählte Element wie $0in der Konsole zugegriffen werden . Daher können Sie das Element auswählen, das einen Tooltip auslöst, und ausführen $($0).tooltip('show').
Marko Grešak
31

Klicken f12Sie auf die Registerkarte Konsole und fügen Sie Folgendes hinzu:

setTimeout(()=> {debugger},5000)

Dies gibt Ihnen 5 Sekunden Zeit, um zu tun, was Sie wollen, und es wird bei brechen 5 seconds. Anschließend können Sie das Zielelement überprüfen

(Beispiel: Bewegen Sie den Mauszeiger über das Element und warten Sie 5 Sekunden.

Ali Kleit
quelle
Funktioniert auch in Electron.
Xmedeko
24

Für mich hat die akzeptierte Antwort nicht funktioniert: Durch Klicken auf DevTools wurde der ToolTip sofort geschlossen.

Ich habe jedoch /superuser/249050/chrome-keyboard-shortcut-to-pause-script-execution gefunden, was mir geholfen hat:

  1. In der Konsole:, Ausführen:
    const F12 = 123
    window.addEventListener('keydown', function(event) { 
      if (event.keyCode === F12 ) {
        debugger; 
      }
    });
  1. Element mit Inspektor hervorheben

  2. Drücken Sie F12

Sie können das Element jetzt mit angehaltenem JavaScript untersuchen, damit sich das DOM nicht ändert.

Mikemaccana
quelle
1
Klug ! Genau das, wonach ich gesucht habe. Danke :) Obwohl es mit F12 mit meinem Setup aus irgendeinem Grund nicht funktioniert hat, habe ich keyCode == 13 verwendet und ENTER gedrückt.
Jeremy F.
2
tolle Lösung! Ich würde vorschlagen, dieses nützliche Snippet im Bereich SOURCE -> SNIPPETS von Chrome zu speichern, damit Sie es mit nur einem Doppelklick ausführen können;)
Magico
1
Diese Lösung ist der akzeptierten weit überlegen. Ich werde es zu einem Lesezeichen machen!
Lulu
1
Tolle Lösung. Sehr schlau.
Charlie Dalsass
1
Perfekt. Sollte die richtige / akzeptierte Antwort sein!
Brosig
10

Einzelfensterantwort ohne Codierung

Keine der anderen Antworten ist ganz richtig oder hat genug Details, also hier ist mein Versuch.

  • Öffnen Sie die DevTools von Chrome mit F12 / Strg + Umschalt + I (Windows / Linux) oder Befehl + Option + I (Mac).
  • Wählen Sie im DevTools-Fenster die Registerkarte Quellen .
  • Bewegen Sie den Mauszeiger über das Element, das Sie untersuchen möchten, um den Tooltip sichtbar zu machen.
  • Drücken Sie F8 (Windows / Linux / Mac), um die Skriptausführung anzuhalten. Das Hauptfenster wird grau und ein Popup "Im Debugger angehalten" wird angezeigt.
  • Wählen Sie im DevTools-Fenster die Registerkarte Elemente
  • Bei Bootstrap-Tooltips wird der Tooltip als letzter <div>in der angezeigt<body>
TobyLL
quelle
5

Keine Codelösung für JS-aktivierte Tooltips:

Überprüfen Sie mit den devtools von Chrome das enthaltende / übergeordnete Element des Tooltips. Klicken Sie auf der Registerkarte "Elemente" mit der rechten Maustaste auf das Container-DOM-Element und wählen Sie "Unterbrechen"> "Teilbaumänderungen". Wenn Sie das nächste Mal mit der Maus über den Teil des DOM fahren, in dem sich der Tooltip befindet, wird der JS-Code angehalten, sodass Sie den Inhalt des Tooltips überprüfen können.

Clhenrick
quelle
4

Folge diesen Schritten

  1. InspectFenster in Chrom öffnen .

  2. Platzieren Sie die Maus über dem Tooltip.

  3. Drücken Sie F8

    Die JS-Ausführung wird angehalten, und Sie können den Tooltip überprüfen.

  4. Drücken Sie F8erneut, um die Ausführung zu starten und F10zu debuggen.

Parvez Ahmed
quelle
2

Hier ist eine einfache Lösung: Wenn Sie über dynamische Tooltips verfügen, können Sie diese "persistent" machen, indem Sie das Triggerereignis (vorübergehend) in ändern click. Dies hat zur Folge, dass der Tooltip nur bei einem Click-out verschwindet:

$('body').tooltip({
    selector: "[data-toggle='tooltip']",
    trigger: "click"
});

Auf diese Weise kann es einfach mit den Debugging-Tools von FF oder Chrome überprüft werden.

lxg
quelle
2

1) Öffnen Sie das Inspektionsfenster, indem Sie auf F12 klicken

2) Gehen Sie zur Registerkarte Quelle (neben der Konsole).

3) Bewegen Sie nun den Mauszeiger über das zu inspizierende Element und halten Sie die Maus dort.

4) Verwenden Sie die Tastatur (Tabulatortaste oder Umschalttaste + Tabulatortaste), um das Steuerelement auf die Pause-Taste oder F8 zu bewegen. Siehe Bild

5) Wenn der Tastaturfokus auf der Wiedergabetaste liegt. Drücke Enter. Ihr Schwebeelement wird eingefroren. Sie können jetzt alles tun

Rajan
quelle
1

Es ist so einfach, diese Tooltips zu bearbeiten.

Schritt 1 : Überprüfen Sie das Element mit dem Tooltip. Stellen Sie sicher, dass es in devtools blau hervorgehoben ist.

Schritt 2 : Klicken Sie mit der rechten Maustaste auf das Element (im devtools-Teil) und wählen Sie unter Break on: Attributänderungen aus Geben Sie hier die Bildbeschreibung ein

Schritt 3 : Bewegen Sie den Mauszeiger über das inspizierte Element, und über der Site wird eine graue Überlagerung mit einem kleinen Text angezeigt: Im Debugger angehalten

Geben Sie hier die Bildbeschreibung ein

am oberen Rand Ihres Bildschirms

Schritt 4 : Klicken Sie auf den blauen Pfeil, bis der Schwebezustand ausgewählt ist.

Schritt 5 : Überprüfen und bearbeiten Sie den Tooltip

Catalin
quelle
0

Ich hatte Probleme damit, also ging ich zur Dokumentation und überprüfte den Tooltip, der bereits auf der Seite gerendert ist. Das hat mir geholfen, die Dom-Struktur des Tooltips zu sehen und entsprechend zu bearbeiten.

philip
quelle
0

In Chome unter Linux kann dies für JS-generierte Tooltips erreicht werden, z. B. für Referenzen in WikiPedia, indem folgende Schritte ausgeführt werden:

Öffnen Sie wie oben angegeben die Entwicklungswerkzeuge mit F12. Öffne sie in einem anderen Fenster. Markieren Sie den Tooltip und klicken Sie auf Strg-Umschalt-C (Der HTML-Inspektor). Wenn Sie sich über die Spitze bewegen, wird im Entwicklungsfenster der entsprechende Abschnitt angezeigt.

Wenn Sie die Spitze offen halten müssen, wenn Sie mit der Maus darüber fahren, um sie im anderen Fenster genauer untersuchen zu können, klicken Sie mit der rechten Maustaste auf den Tooltip, lassen Sie das Kontextmenü geöffnet und klicken Sie auf das Fenster dev dev tools. In diesem Szenario bleibt der Tipp im Wikipedia-Fenster.

Bis zu einem gewissen Grad funktioniert es auch mit Bootstrap-Tipps.

user1806949
quelle
0

Aus irgendeinem Grund funktionierten die hier angegebenen Antworten unter Windows nicht für mich. Ich konnte den Tooltip überprüfen, indem ich die Entwicklungswerkzeuge öffnete, dann mit der Maus über das Element fuhr, das den Tooltip aufruft, und dann mit der rechten Maustaste auf dieses Element klickte (nicht auf den Tooltip). Bewegen Sie dann den Cursor in das Inspektorfenster und scrollen Sie nach unten. Das Tooltip-Element sollte noch vorhanden sein.

Nolan Lindeke
quelle
0

Die Entwicklungswerkzeuge bieten eine Möglichkeit, ein schwebendes Element wie einen Tooltip zu untersuchen.

1 - Öffnen Sie die Entwicklungswerkzeuge mit F12.

2 - Wählen Sie die Registerkarte "Elemente".

3 - Wählen Sie das übergeordnete Element aus, das den Tooltip enthält.

4 - Klicken Sie auf "..." (in der Zeile des übergeordneten Elements) und wählen Sie "Pause ein" / "Teilbaumänderungen" (siehe Abbildung unten).

Legen Sie eine Unterbrechung für das übergeordnete Element fest

5 - Kehren Sie schließlich zur Anwendung zurück und lassen Sie den Tooltip anzeigen. Es sollte die Ausführung blockieren, nachdem der Tooltip sichtbar wird

Hoffe, es kann für jemanden nützlich sein!

Ricardo Magalhães
quelle
0

Eine andere Lösung habe ich für dieses Problem gefunden. Drücken Sie in der mobilen oder Tablet-Ansicht in Chrome in den Chrome Dev-Tools Strg + Umschalt + M, um die mobile Ansicht in Chrome anzuzeigen. Klicken Sie auf (Tap) auf Quick - Info div und Sie können es mit inspizieren Rechtsklick auf Tooltip

HERAwais
quelle
0

Drücken Sie command-option-j, um die Konsole zu öffnen. Klicken Sie auf die Schaltfläche zum Anzeigen des Fensters in der oberen rechten Ecke der Konsole, um die Konsole in einem anderen Fenster zu öffnen.

Bewegen command-Sie den Mauszeiger im Chrome-Fenster über das Element, das das Popover auslöst, drücken Sie, wie oft Sie sich auf die Konsole konzentrieren müssen, und geben Sie dann ein debugger. Das wird die Seite einfrieren; Anschließend können Sie das Element auf der Registerkarte Elemente überprüfen.

Okau123
quelle
-1

Es ist erwähnenswert, dass das Umschalten des: hover-Status innerhalb der dev-Tools nur dann Auswirkungen hat, wenn der Hinweistext zunächst über CSS: hover-Regeln aktiviert wird. Der Umschalter wendet den Schwebezustand nur zu Renderzwecken auf das Element an, löst jedoch kein entsprechendes JavaScript-Mouseover-Ereignis aus.

Viele Frameworks wie AngularJS hängen Tooltip-HTML dynamisch über JavaScript an den unteren Rand des Dokumentkörpers an, wenn ein Zielelement bewegt wird, sodass das Bewegen und Überprüfen des Zielelements nicht hilfreich ist.

Die Antwort von @ joeyyang hat in diesem Szenario sehr gut für mich funktioniert.

John Rix
quelle
-2

Eine der einfachsten Möglichkeiten, die ich gefunden habe, ist:

  1. Öffnen Sie die Chrome-Entwicklungstools an der Seite

  2. Bewegen Sie den Mauszeiger über das Element

  3. Rechtsklick

  4. Klicken Sie auf Entwickler-Tools

  5. Jetzt können Sie Stile überprüfen und ändern

Kaspars Siricenko
quelle
Dies ist nicht hilfreich @Kaspars
Es Noguera
@EsNoguera könnte genauer sein, warum. So hat es bei mir funktioniert. Seit ich eine Methode gefunden habe, die funktioniert hat, warum ist es schlecht, vorgeschlagen zu werden?
Kaspars Siricenko