本文整理汇总了C++中ShadowRoot::insertedInto方法的典型用法代码示例。如果您正苦于以下问题:C++ ShadowRoot::insertedInto方法的具体用法?C++ ShadowRoot::insertedInto怎么用?C++ ShadowRoot::insertedInto使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ShadowRoot
的用法示例。
在下文中一共展示了ShadowRoot::insertedInto方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: appendShadowRoot
ShadowRoot& ElementShadow::addShadowRoot(Element& shadowHost, ShadowRootType type)
{
EventDispatchForbiddenScope assertNoEventDispatch;
ScriptForbiddenScope forbidScript;
if (type == ShadowRootType::V0 && m_shadowRoot) {
DCHECK_EQ(m_shadowRoot->type(), ShadowRootType::V0);
Deprecation::countDeprecation(shadowHost.document(), UseCounter::ElementCreateShadowRootMultiple);
}
if (m_shadowRoot) {
// TODO(hayato): Is the order, from the youngest to the oldest, important?
for (ShadowRoot* root = &youngestShadowRoot(); root; root = root->olderShadowRoot())
root->lazyReattachIfAttached();
}
ShadowRoot* shadowRoot = ShadowRoot::create(shadowHost.document(), type);
shadowRoot->setParentOrShadowHostNode(&shadowHost);
shadowRoot->setParentTreeScope(shadowHost.treeScope());
appendShadowRoot(*shadowRoot);
setNeedsDistributionRecalc();
shadowRoot->insertedInto(&shadowHost);
shadowHost.setChildNeedsStyleRecalc();
shadowHost.setNeedsStyleRecalc(SubtreeStyleChange, StyleChangeReasonForTracing::create(StyleChangeReason::Shadow));
InspectorInstrumentation::didPushShadowRoot(&shadowHost, shadowRoot);
return *shadowRoot;
}