2017-11-21 2 views
0

Wenn ich mouseover ein Element, wie eine Zeile zum Beispiel, in ag-Grid merke ich, dass es einige Inline-CSS hinzugefügt, um dieses Element zu markieren. Zum Beispiel, wenn das Element nicht ausgewählt ist, sucht die HTML etwa so:Wie fügt Ag-Grid css zu Elementen hinzu

<div class="ag-full-width-viewport" role="presentation" 
style="border-right: 0px solid transparent;"> == $0 

Allerdings, wenn ich dieses Elements Mouseover wird es automatisch markiert und Inline-CSS wird hinzugefügt:

<div class="ag-full-width-viewport" role="presentation" 
style="border-right: 0px solid transparent: border-bottom: 0px solid 
transparent;"> == $0 

Ich frage mich, wie genau das tut die api. Wo kann ich im Quellcode diese Logik sehen? Ich möchte für den Zweck kennen meinen eigenen CSS auf bestimmte Elemente innerhalb des Gitters Hinzufügen ... anstatt mit dem api getRowClass() usw.

Antwort

1

Es ist wahrscheinlich der:

https://github.com/ag-grid/ag-grid/blob/b4353aba1a2405d2133ef0726dc6733596435d9d/src/ts/gridPanel/gridPanel.ts#L864

mit dieser Suche gefunden :

https://github.com/ag-grid/ag-grid/search?utf8=✓&q=transparent+extension%3Ajs+extension%3Ats&type=

Sie könnten Ihre Browser-Entwickler-Tools verwenden, um es zu debuggen, wenn Sie benötigen. Zum Beispiel können Sie in den Developer Tools von Chrome mit der rechten Maustaste auf das Element mit der Bezeichnung $0 (in Ihrer Frage) und dann auf "Break on ... -> Attributmodifikationen" klicken. Sobald sich das Attribut style ändert, sehen Sie, woher es stammt.

ich das Gefühl, dass Ihre Frage ein bisschen ein XY Problem obwohl ist ...

+0

Sie sind richtig, dass die Frage ein xy-Problem. Dies liegt daran, dass getRowClass() und rowClassRules() nicht wie beabsichtigt funktionieren. Es wendet die CSS-Klasse auf die oberste Ebene der HTML-Hierarchie an, nicht auf die bestimmte Zeile, auf die Sie klicken. Ich sehe keine andere Möglichkeit, dies zu tun, als zu versuchen, zu replizieren, was sie im Quellcode getan haben. – MadCatm2

Verwandte Themen