diff --git a/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.cpp b/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.cpp
index a61b895f25..8038c1791e 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.cpp
+++ b/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.cpp
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2020, the SerenityOS developers.
+ * Copyright (c) 2023, Tim Flynn
*
* SPDX-License-Identifier: BSD-2-Clause
*/
@@ -91,9 +92,11 @@ WebIDL::ExceptionOr HTMLMediaElement::can_play_type
}
// https://html.spec.whatwg.org/multipage/media.html#dom-media-load
-void HTMLMediaElement::load() const
+WebIDL::ExceptionOr HTMLMediaElement::load()
{
- dbgln("(STUBBED) HTMLMediaElement::load()");
+ // When the load() method on a media element is invoked, the user agent must run the media element load algorithm.
+ TRY(load_element());
+ return {};
}
// https://html.spec.whatwg.org/multipage/media.html#dom-media-duration
diff --git a/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.h b/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.h
index ab95962ace..041989a5e3 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.h
+++ b/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.h
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2020, the SerenityOS developers.
+ * Copyright (c) 2023, Tim Flynn
*
* SPDX-License-Identifier: BSD-2-Clause
*/
@@ -42,7 +43,7 @@ public:
};
ReadyState ready_state() const { return m_ready_state; }
- void load() const;
+ WebIDL::ExceptionOr load();
double duration() const;
void pause() const;