Updates internal flags after removing an element.
Description
Certain conditions (such as “has_p_in_button_scope”) are maintained here as flags that are only modified when adding and removing elements. This allows the HTML Processor to quickly check for these conditions instead of iterating over the open stack elements upon each new tag it encounters. These flags, however, need to be maintained as items are added and removed from the stack.
Parameters
$itemWP_HTML_Tokenrequired- Element that was removed from the stack of open elements.
Source
public function after_element_pop( WP_HTML_Token $item ): void {
/*
* When adding support for new elements, expand this switch to trap
* cases where the precalculated value needs to change.
*/
switch ( $item->node_name ) {
case 'APPLET':
case 'BUTTON':
case 'CAPTION':
case 'HTML':
case 'P':
case 'TABLE':
case 'TD':
case 'TH':
case 'MARQUEE':
case 'OBJECT':
case 'TEMPLATE':
case 'math MI':
case 'math MO':
case 'math MN':
case 'math MS':
case 'math MTEXT':
case 'math ANNOTATION-XML':
case 'svg FOREIGNOBJECT':
case 'svg DESC':
case 'svg TITLE':
$this->has_p_in_button_scope = $this->has_element_in_button_scope( 'P' );
break;
}
if ( null !== $this->pop_handler ) {
( $this->pop_handler )( $item );
}
}
Changelog
| Version | Description |
|---|---|
| 6.4.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.