فهرست منبع

LibWeb: Implement HTMLIFrameElement.loading

Jamie Mansfield 1 سال پیش
والد
کامیت
600daea544

+ 5 - 0
Tests/LibWeb/Text/expected/HTML/iframe-element-loading.txt

@@ -0,0 +1,5 @@
+   loading = eager
+
+loading = lazy
+
+loading = eager

+ 18 - 0
Tests/LibWeb/Text/input/HTML/iframe-element-loading.html

@@ -0,0 +1,18 @@
+<iframe id="testFrame"></iframe>
+<script src="../include.js"></script>
+<script>
+    test(() => {
+        const iframe = document.getElementById('testFrame');
+
+        println(`loading = ${iframe.loading}`);
+        println('');
+
+        iframe.loading = 'lazy';
+
+        println(`loading = ${iframe.loading}`);
+        println('');
+
+        iframe.loading = 'invalid-value';
+        println(`loading = ${iframe.loading}`);
+    });
+</script>

+ 2 - 1
Userland/Libraries/LibWeb/HTML/HTMLIFrameElement.idl

@@ -1,4 +1,5 @@
 #import <HTML/HTMLElement.idl>
+#import <HTML/Scripting/Fetching.idl>
 #import <DOM/Document.idl>
 
 // https://html.spec.whatwg.org/multipage/iframe-embed-object.html#htmliframeelement
@@ -16,7 +17,7 @@ interface HTMLIFrameElement : HTMLElement {
     [CEReactions, Reflect] attribute DOMString width;
     [CEReactions, Reflect] attribute DOMString height;
     [FIXME, CEReactions] attribute DOMString referrerPolicy;
-    [FIXME, CEReactions] attribute DOMString loading;
+    [CEReactions, Enumerated=LazyLoadingAttribute, Reflect] attribute DOMString loading;
     readonly attribute Document? contentDocument;
     readonly attribute WindowProxy? contentWindow;
     Document? getSVGDocument();