E 'possibile vedere se esiste un elemento DOM shadow? Non sono troppo interessato a manipolarlo, o addirittura a prenderlo di mira per dire. Capisco il ragionamento dell'incapsulamento. Ma mi piacerebbe essere in grado di disegnare altri elementi nel DOM normale, in base alla presenza o meno dell'elemento Shadow DOM.Verificare se l'elemento contiene # shadow-root
Un po 'come:
if ($('#element-id #shadow-root').length) {
// true
}
O se non per l'ombra-root, almeno un elemento specifico all'interno, come l'ID di un div. Quindi se quel div esiste, allora chiaramente l'elemento Shadow DOM è sulla pagina.
So che non sarebbe così semplice ... Da alcune ricerche che ho fatto, ci sono cose come >>>
e /deep/
ma il loro supporto sembra essere basso/nessuno/deprecato. Compra forse c'è un altro modo, per quanto inelegante possa essere?
Sei voler rilevare se un elemento ospita un elemento ombra DOM? O sarebbe utile? – KevBot
Da quello che ho capito, dato un elemento nella dom shadow, tramite una js var che rappresenta un nodo shadow-dom, puoi determinare se quel nodo è un elemento dom shadow o no, e può attraversare il suo albero, o il suo albero fino all'elemento non-ombra potrebbe essere un figlio di (http://stackoverflow.com/questions/27453617/how-can-i-tell-if-an-element-is-in-a-hadow-dom) ma senza avere già quel nodo, dato che js queryselector api non può bersagliare shadow dom da solo, non penso che tu possa fare quello che stai chiedendo – chiliNUT
@KevBot Penso che sia quello che l'op sta chiedendo, lol se non mi piacerebbe sapere , sai come farlo? – chiliNUT