diff --git a/Userland/Libraries/LibWeb/DOM/Node.h b/Userland/Libraries/LibWeb/DOM/Node.h index 6fe2a5c2de..f0b3f486ba 100644 --- a/Userland/Libraries/LibWeb/DOM/Node.h +++ b/Userland/Libraries/LibWeb/DOM/Node.h @@ -89,6 +89,7 @@ public: virtual bool is_html_body_element() const { return false; } virtual bool is_html_input_element() const { return false; } virtual bool is_html_progress_element() const { return false; } + virtual bool is_html_script_element() const { return false; } virtual bool is_html_template_element() const { return false; } virtual bool is_navigable_container() const { return false; } diff --git a/Userland/Libraries/LibWeb/HTML/HTMLScriptElement.h b/Userland/Libraries/LibWeb/HTML/HTMLScriptElement.h index 5b7a5e1fee..00ef528324 100644 --- a/Userland/Libraries/LibWeb/HTML/HTMLScriptElement.h +++ b/Userland/Libraries/LibWeb/HTML/HTMLScriptElement.h @@ -58,6 +58,8 @@ public: private: HTMLScriptElement(DOM::Document&, DOM::QualifiedName); + virtual bool is_html_script_element() const override { return true; } + virtual void resource_did_load() override; virtual void resource_did_fail() override; @@ -124,3 +126,8 @@ private: }; } + +namespace Web::DOM { +template<> +inline bool Node::fast_is() const { return is_html_script_element(); } +}