Guide Display Issues
My Guide Isn't Showing
Mutation Observer & Shadow DOM Limitation
Guide does not display when it's target element becomes visible and your application uses Web Components or frameworks with Shadow DOM elements (such as Polymer or Lit)
Applications created after June 2023 spin up with the preferMutationObserver
application flag enabled. Instead of evaluating a page every 500ms for guide
eligibility, this setting makes the agent responsive to changes in the document.
In most cases, this will yield better performance since the agent will spend
less time processing on the main thread.
However, a limitation of the MutationObserver API is that it does not detect
changes in elements encapsulated in Shadow DOM trees. To remedy this, we have an
additional config setting observeShadowRoots
that’s available when
preferMutationObserver
is enabled. As part of the agent’s startup, we run a
full document scan for shadow root elements and attach MutationObservers to each
instance. The observeShadowRoots
setting is disabled by default, since the
scan and additional observers may add unnecessary overhead.
To get the guide to reshow, try enabling the observeShadowRoots
flag or
disabling preferMutationObserver
. Both options should result in the guide
showing when the target element becomes visible. These settings can be
configured from the App Details page or passed as boolean values to
pendo.initialize()
Settings → Subscription Settings → View App Details:
- “Prefer MutationObserver to 500ms timer, when available” checkbox for
preferMutationObserver
- “Use MutationObserver on Shadow DOM elements” checkbox for
observeShadowRoots
(only present in the UI whenpreferMutationObserver
is enabled)