| OLD | NEW |
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <script src="../resources/js-test.js"></script> | 2 <script src="../resources/js-test.js"></script> |
| 3 <script src="helper-functions.js"></script> | 3 <script src="../resources/intersection-observer-helper-functions.js"></script> |
| 4 <div style="width:100%; height:700px;"></div> | 4 <div style="width:100%; height:700px;"></div> |
| 5 <div id="target" style="background-color: green; width:100px; height:100px"></di
v> | 5 <div id="target" style="background-color: green; width:100px; height:100px"></di
v> |
| 6 <div style="width:100%; height:700px;"></div> | 6 <div style="width:100%; height:700px;"></div> |
| 7 | 7 |
| 8 <script> | 8 <script> |
| 9 description("Intersection observer test with multiple thresholds."); | 9 description("Intersection observer test with multiple thresholds."); |
| 10 var target = document.getElementById("target"); | 10 var target = document.getElementById("target"); |
| 11 var entries = []; | 11 var entries = []; |
| 12 var observer = new IntersectionObserver( | 12 var observer = new IntersectionObserver( |
| 13 changes => { entries = entries.concat(changes) }, | 13 changes => { entries = entries.concat(changes) }, |
| 14 { threshold: [0, 0.25, 0.5, 0.75, 1] } | 14 { threshold: [0, 0.25, 0.5, 0.75, 1] } |
| 15 ); | 15 ); |
| 16 | 16 |
| 17 onload = function() { | 17 onload = function() { |
| 18 observer.observe(target); | 18 observer.observe(target); |
| 19 entries = entries.concat(observer.takeRecords()); | 19 entries = entries.concat(observer.takeRecords()); |
| 20 shouldBeEqualToNumber("entries.length", 0); | 20 shouldBeEqualToNumber("entries.length", 0); |
| 21 // See README for explanation of double RAF. | 21 waitForNotification(step0); |
| 22 requestAnimationFrame(() => { requestAnimationFrame(step0) }); | |
| 23 } | 22 } |
| 24 | 23 |
| 25 function step0() { | 24 function step0() { |
| 26 entries = entries.concat(observer.takeRecords()); | |
| 27 shouldBeEqualToNumber("entries.length", 0); | 25 shouldBeEqualToNumber("entries.length", 0); |
| 28 document.scrollingElement.scrollTop = 120; | 26 document.scrollingElement.scrollTop = 120; |
| 29 requestAnimationFrame(step1); | 27 waitForNotification(step1); |
| 30 } | 28 } |
| 31 | 29 |
| 32 function step1() { | 30 function step1() { |
| 33 entries = entries.concat(observer.takeRecords()); | |
| 34 shouldBeEqualToNumber("entries.length", 1); | 31 shouldBeEqualToNumber("entries.length", 1); |
| 35 if (entries.length > 0) { | 32 if (entries.length > 0) { |
| 36 shouldBeEqualToNumber("entries[0].boundingClientRect.left", 8); | 33 shouldBeEqualToNumber("entries[0].boundingClientRect.left", 8); |
| 37 shouldBeEqualToNumber("entries[0].boundingClientRect.right", 108); | 34 shouldBeEqualToNumber("entries[0].boundingClientRect.right", 108); |
| 38 shouldBeEqualToNumber("entries[0].boundingClientRect.top", 588); | 35 shouldBeEqualToNumber("entries[0].boundingClientRect.top", 588); |
| 39 shouldBeEqualToNumber("entries[0].boundingClientRect.bottom", 688); | 36 shouldBeEqualToNumber("entries[0].boundingClientRect.bottom", 688); |
| 40 shouldBeEqualToNumber("entries[0].intersectionRect.left", 8); | 37 shouldBeEqualToNumber("entries[0].intersectionRect.left", 8); |
| 41 shouldBeEqualToNumber("entries[0].intersectionRect.right", 108); | 38 shouldBeEqualToNumber("entries[0].intersectionRect.right", 108); |
| 42 shouldBeEqualToNumber("entries[0].intersectionRect.top", 588); | 39 shouldBeEqualToNumber("entries[0].intersectionRect.top", 588); |
| 43 shouldBeEqualToNumber("entries[0].intersectionRect.bottom", 600); | 40 shouldBeEqualToNumber("entries[0].intersectionRect.bottom", 600); |
| 44 shouldBeEqualToNumber("entries[0].rootBounds.left", 0); | 41 shouldBeEqualToNumber("entries[0].rootBounds.left", 0); |
| 45 shouldBeEqualToNumber("entries[0].rootBounds.right", 785); | 42 shouldBeEqualToNumber("entries[0].rootBounds.right", 785); |
| 46 shouldBeEqualToNumber("entries[0].rootBounds.top", 0); | 43 shouldBeEqualToNumber("entries[0].rootBounds.top", 0); |
| 47 shouldBeEqualToNumber("entries[0].rootBounds.bottom", 600); | 44 shouldBeEqualToNumber("entries[0].rootBounds.bottom", 600); |
| 48 shouldBeCloseTo("entries[0].intersectionRatio", intersectionRatio(entries[0]
), .0001); | 45 shouldBeCloseTo("entries[0].intersectionRatio", intersectionRatio(entries[0]
), .0001); |
| 49 shouldEvaluateToSameObject("entries[0].target", target); | 46 shouldEvaluateToSameObject("entries[0].target", target); |
| 50 } | 47 } |
| 51 document.scrollingElement.scrollTop = 160; | 48 document.scrollingElement.scrollTop = 160; |
| 52 requestAnimationFrame(step2); | 49 waitForNotification(step2); |
| 53 } | 50 } |
| 54 | 51 |
| 55 function step2() { | 52 function step2() { |
| 56 entries = entries.concat(observer.takeRecords()); | |
| 57 shouldBeEqualToNumber("entries.length", 2); | 53 shouldBeEqualToNumber("entries.length", 2); |
| 58 if (entries.length > 1) { | 54 if (entries.length > 1) { |
| 59 shouldBeEqualToNumber("entries[1].boundingClientRect.left", 8); | 55 shouldBeEqualToNumber("entries[1].boundingClientRect.left", 8); |
| 60 shouldBeEqualToNumber("entries[1].boundingClientRect.right", 108); | 56 shouldBeEqualToNumber("entries[1].boundingClientRect.right", 108); |
| 61 shouldBeEqualToNumber("entries[1].boundingClientRect.top", 548); | 57 shouldBeEqualToNumber("entries[1].boundingClientRect.top", 548); |
| 62 shouldBeEqualToNumber("entries[1].boundingClientRect.bottom", 648); | 58 shouldBeEqualToNumber("entries[1].boundingClientRect.bottom", 648); |
| 63 shouldBeEqualToNumber("entries[1].intersectionRect.left", 8); | 59 shouldBeEqualToNumber("entries[1].intersectionRect.left", 8); |
| 64 shouldBeEqualToNumber("entries[1].intersectionRect.right", 108); | 60 shouldBeEqualToNumber("entries[1].intersectionRect.right", 108); |
| 65 shouldBeEqualToNumber("entries[1].intersectionRect.top", 548); | 61 shouldBeEqualToNumber("entries[1].intersectionRect.top", 548); |
| 66 shouldBeEqualToNumber("entries[1].intersectionRect.bottom", 600); | 62 shouldBeEqualToNumber("entries[1].intersectionRect.bottom", 600); |
| 67 shouldBeEqualToNumber("entries[1].rootBounds.left", 0); | 63 shouldBeEqualToNumber("entries[1].rootBounds.left", 0); |
| 68 shouldBeEqualToNumber("entries[1].rootBounds.right", 785); | 64 shouldBeEqualToNumber("entries[1].rootBounds.right", 785); |
| 69 shouldBeEqualToNumber("entries[1].rootBounds.top", 0); | 65 shouldBeEqualToNumber("entries[1].rootBounds.top", 0); |
| 70 shouldBeEqualToNumber("entries[1].rootBounds.bottom", 600); | 66 shouldBeEqualToNumber("entries[1].rootBounds.bottom", 600); |
| 71 shouldBeCloseTo("entries[1].intersectionRatio", intersectionRatio(entries[1]
), .0001); | 67 shouldBeCloseTo("entries[1].intersectionRatio", intersectionRatio(entries[1]
), .0001); |
| 72 shouldEvaluateToSameObject("entries[1].target", target); | 68 shouldEvaluateToSameObject("entries[1].target", target); |
| 73 } | 69 } |
| 74 document.scrollingElement.scrollTop = 200; | 70 document.scrollingElement.scrollTop = 200; |
| 75 requestAnimationFrame(step3); | 71 waitForNotification(step3); |
| 76 } | 72 } |
| 77 | 73 |
| 78 function step3() { | 74 function step3() { |
| 79 entries = entries.concat(observer.takeRecords()); | |
| 80 shouldBeEqualToNumber("entries.length", 3); | 75 shouldBeEqualToNumber("entries.length", 3); |
| 81 if (entries.length > 2) { | 76 if (entries.length > 2) { |
| 82 shouldBeEqualToNumber("entries[2].boundingClientRect.left", 8); | 77 shouldBeEqualToNumber("entries[2].boundingClientRect.left", 8); |
| 83 shouldBeEqualToNumber("entries[2].boundingClientRect.right", 108); | 78 shouldBeEqualToNumber("entries[2].boundingClientRect.right", 108); |
| 84 shouldBeEqualToNumber("entries[2].boundingClientRect.top", 508); | 79 shouldBeEqualToNumber("entries[2].boundingClientRect.top", 508); |
| 85 shouldBeEqualToNumber("entries[2].boundingClientRect.bottom", 608); | 80 shouldBeEqualToNumber("entries[2].boundingClientRect.bottom", 608); |
| 86 shouldBeEqualToNumber("entries[2].intersectionRect.left", 8); | 81 shouldBeEqualToNumber("entries[2].intersectionRect.left", 8); |
| 87 shouldBeEqualToNumber("entries[2].intersectionRect.right", 108); | 82 shouldBeEqualToNumber("entries[2].intersectionRect.right", 108); |
| 88 shouldBeEqualToNumber("entries[2].intersectionRect.top", 508); | 83 shouldBeEqualToNumber("entries[2].intersectionRect.top", 508); |
| 89 shouldBeEqualToNumber("entries[2].intersectionRect.bottom", 600); | 84 shouldBeEqualToNumber("entries[2].intersectionRect.bottom", 600); |
| 90 shouldBeEqualToNumber("entries[2].rootBounds.left", 0); | 85 shouldBeEqualToNumber("entries[2].rootBounds.left", 0); |
| 91 shouldBeEqualToNumber("entries[2].rootBounds.right", 785); | 86 shouldBeEqualToNumber("entries[2].rootBounds.right", 785); |
| 92 shouldBeEqualToNumber("entries[2].rootBounds.top", 0); | 87 shouldBeEqualToNumber("entries[2].rootBounds.top", 0); |
| 93 shouldBeEqualToNumber("entries[2].rootBounds.bottom", 600); | 88 shouldBeEqualToNumber("entries[2].rootBounds.bottom", 600); |
| 94 shouldBeCloseTo("entries[2].intersectionRatio", intersectionRatio(entries[2]
), .0001); | 89 shouldBeCloseTo("entries[2].intersectionRatio", intersectionRatio(entries[2]
), .0001); |
| 95 shouldEvaluateToSameObject("entries[2].target", target); | 90 shouldEvaluateToSameObject("entries[2].target", target); |
| 96 } | 91 } |
| 97 document.scrollingElement.scrollTop = 240; | 92 document.scrollingElement.scrollTop = 240; |
| 98 requestAnimationFrame(step4); | 93 waitForNotification(step4); |
| 99 } | 94 } |
| 100 | 95 |
| 101 function step4() { | 96 function step4() { |
| 102 entries = entries.concat(observer.takeRecords()); | |
| 103 shouldBeEqualToNumber("entries.length", 4); | 97 shouldBeEqualToNumber("entries.length", 4); |
| 104 if (entries.length > 3) { | 98 if (entries.length > 3) { |
| 105 shouldBeEqualToNumber("entries[3].boundingClientRect.left", 8); | 99 shouldBeEqualToNumber("entries[3].boundingClientRect.left", 8); |
| 106 shouldBeEqualToNumber("entries[3].boundingClientRect.right", 108); | 100 shouldBeEqualToNumber("entries[3].boundingClientRect.right", 108); |
| 107 shouldBeEqualToNumber("entries[3].boundingClientRect.top", 468); | 101 shouldBeEqualToNumber("entries[3].boundingClientRect.top", 468); |
| 108 shouldBeEqualToNumber("entries[3].boundingClientRect.bottom", 568); | 102 shouldBeEqualToNumber("entries[3].boundingClientRect.bottom", 568); |
| 109 shouldBeEqualToNumber("entries[3].intersectionRect.left", 8); | 103 shouldBeEqualToNumber("entries[3].intersectionRect.left", 8); |
| 110 shouldBeEqualToNumber("entries[3].intersectionRect.right", 108); | 104 shouldBeEqualToNumber("entries[3].intersectionRect.right", 108); |
| 111 shouldBeEqualToNumber("entries[3].intersectionRect.top", 468); | 105 shouldBeEqualToNumber("entries[3].intersectionRect.top", 468); |
| 112 shouldBeEqualToNumber("entries[3].intersectionRect.bottom", 568); | 106 shouldBeEqualToNumber("entries[3].intersectionRect.bottom", 568); |
| 113 shouldBeEqualToNumber("entries[3].rootBounds.left", 0); | 107 shouldBeEqualToNumber("entries[3].rootBounds.left", 0); |
| 114 shouldBeEqualToNumber("entries[3].rootBounds.right", 785); | 108 shouldBeEqualToNumber("entries[3].rootBounds.right", 785); |
| 115 shouldBeEqualToNumber("entries[3].rootBounds.top", 0); | 109 shouldBeEqualToNumber("entries[3].rootBounds.top", 0); |
| 116 shouldBeEqualToNumber("entries[3].rootBounds.bottom", 600); | 110 shouldBeEqualToNumber("entries[3].rootBounds.bottom", 600); |
| 117 shouldBeCloseTo("entries[3].intersectionRatio", intersectionRatio(entries[3]
), .0001); | 111 shouldBeCloseTo("entries[3].intersectionRatio", intersectionRatio(entries[3]
), .0001); |
| 118 shouldEvaluateToSameObject("entries[3].target", target); | 112 shouldEvaluateToSameObject("entries[3].target", target); |
| 119 } | 113 } |
| 120 document.scrollingElement.scrollTop = 740; | 114 document.scrollingElement.scrollTop = 740; |
| 121 requestAnimationFrame(step5); | 115 waitForNotification(step5); |
| 122 } | 116 } |
| 123 | 117 |
| 124 function step5() { | 118 function step5() { |
| 125 entries = entries.concat(observer.takeRecords()); | |
| 126 shouldBeEqualToNumber("entries.length", 5); | 119 shouldBeEqualToNumber("entries.length", 5); |
| 127 if (entries.length > 4) { | 120 if (entries.length > 4) { |
| 128 shouldBeEqualToNumber("entries[4].boundingClientRect.left", 8); | 121 shouldBeEqualToNumber("entries[4].boundingClientRect.left", 8); |
| 129 shouldBeEqualToNumber("entries[4].boundingClientRect.right", 108); | 122 shouldBeEqualToNumber("entries[4].boundingClientRect.right", 108); |
| 130 shouldBeEqualToNumber("entries[4].boundingClientRect.top", -32); | 123 shouldBeEqualToNumber("entries[4].boundingClientRect.top", -32); |
| 131 shouldBeEqualToNumber("entries[4].boundingClientRect.bottom", 68); | 124 shouldBeEqualToNumber("entries[4].boundingClientRect.bottom", 68); |
| 132 shouldBeEqualToNumber("entries[4].intersectionRect.left", 8); | 125 shouldBeEqualToNumber("entries[4].intersectionRect.left", 8); |
| 133 shouldBeEqualToNumber("entries[4].intersectionRect.right", 108); | 126 shouldBeEqualToNumber("entries[4].intersectionRect.right", 108); |
| 134 shouldBeEqualToNumber("entries[4].intersectionRect.top", 0); | 127 shouldBeEqualToNumber("entries[4].intersectionRect.top", 0); |
| 135 shouldBeEqualToNumber("entries[4].intersectionRect.bottom", 68); | 128 shouldBeEqualToNumber("entries[4].intersectionRect.bottom", 68); |
| 136 shouldBeEqualToNumber("entries[4].rootBounds.left", 0); | 129 shouldBeEqualToNumber("entries[4].rootBounds.left", 0); |
| 137 shouldBeEqualToNumber("entries[4].rootBounds.right", 785); | 130 shouldBeEqualToNumber("entries[4].rootBounds.right", 785); |
| 138 shouldBeEqualToNumber("entries[4].rootBounds.top", 0); | 131 shouldBeEqualToNumber("entries[4].rootBounds.top", 0); |
| 139 shouldBeEqualToNumber("entries[4].rootBounds.bottom", 600); | 132 shouldBeEqualToNumber("entries[4].rootBounds.bottom", 600); |
| 140 shouldBeCloseTo("entries[4].intersectionRatio", intersectionRatio(entries[4]
), .0001); | 133 shouldBeCloseTo("entries[4].intersectionRatio", intersectionRatio(entries[4]
), .0001); |
| 141 shouldEvaluateToSameObject("entries[4].target", target); | 134 shouldEvaluateToSameObject("entries[4].target", target); |
| 142 } | 135 } |
| 143 document.scrollingElement.scrollTop = 760; | 136 document.scrollingElement.scrollTop = 760; |
| 144 requestAnimationFrame(step6); | 137 waitForNotification(step6); |
| 145 } | 138 } |
| 146 | 139 |
| 147 function step6() { | 140 function step6() { |
| 148 entries = entries.concat(observer.takeRecords()); | |
| 149 shouldBeEqualToNumber("entries.length", 6); | 141 shouldBeEqualToNumber("entries.length", 6); |
| 150 if (entries.length > 5) { | 142 if (entries.length > 5) { |
| 151 shouldBeEqualToNumber("entries[5].boundingClientRect.left", 8); | 143 shouldBeEqualToNumber("entries[5].boundingClientRect.left", 8); |
| 152 shouldBeEqualToNumber("entries[5].boundingClientRect.right", 108); | 144 shouldBeEqualToNumber("entries[5].boundingClientRect.right", 108); |
| 153 shouldBeEqualToNumber("entries[5].boundingClientRect.top", -52); | 145 shouldBeEqualToNumber("entries[5].boundingClientRect.top", -52); |
| 154 shouldBeEqualToNumber("entries[5].boundingClientRect.bottom", 48); | 146 shouldBeEqualToNumber("entries[5].boundingClientRect.bottom", 48); |
| 155 shouldBeEqualToNumber("entries[5].intersectionRect.left", 8); | 147 shouldBeEqualToNumber("entries[5].intersectionRect.left", 8); |
| 156 shouldBeEqualToNumber("entries[5].intersectionRect.right", 108); | 148 shouldBeEqualToNumber("entries[5].intersectionRect.right", 108); |
| 157 shouldBeEqualToNumber("entries[5].intersectionRect.top", 0); | 149 shouldBeEqualToNumber("entries[5].intersectionRect.top", 0); |
| 158 shouldBeEqualToNumber("entries[5].intersectionRect.bottom", 48); | 150 shouldBeEqualToNumber("entries[5].intersectionRect.bottom", 48); |
| 159 shouldBeEqualToNumber("entries[5].rootBounds.left", 0); | 151 shouldBeEqualToNumber("entries[5].rootBounds.left", 0); |
| 160 shouldBeEqualToNumber("entries[5].rootBounds.right", 785); | 152 shouldBeEqualToNumber("entries[5].rootBounds.right", 785); |
| 161 shouldBeEqualToNumber("entries[5].rootBounds.top", 0); | 153 shouldBeEqualToNumber("entries[5].rootBounds.top", 0); |
| 162 shouldBeEqualToNumber("entries[5].rootBounds.bottom", 600); | 154 shouldBeEqualToNumber("entries[5].rootBounds.bottom", 600); |
| 163 shouldBeCloseTo("entries[5].intersectionRatio", intersectionRatio(entries[5]
), .0001); | 155 shouldBeCloseTo("entries[5].intersectionRatio", intersectionRatio(entries[5]
), .0001); |
| 164 shouldEvaluateToSameObject("entries[5].target", target); | 156 shouldEvaluateToSameObject("entries[5].target", target); |
| 165 } | 157 } |
| 166 document.scrollingElement.scrollTop = 800; | 158 document.scrollingElement.scrollTop = 800; |
| 167 requestAnimationFrame(step7); | 159 waitForNotification(step7); |
| 168 } | 160 } |
| 169 | 161 |
| 170 function step7() { | 162 function step7() { |
| 171 entries = entries.concat(observer.takeRecords()); | |
| 172 shouldBeEqualToNumber("entries.length", 7); | 163 shouldBeEqualToNumber("entries.length", 7); |
| 173 if (entries.length > 6) { | 164 if (entries.length > 6) { |
| 174 shouldBeEqualToNumber("entries[6].boundingClientRect.left", 8); | 165 shouldBeEqualToNumber("entries[6].boundingClientRect.left", 8); |
| 175 shouldBeEqualToNumber("entries[6].boundingClientRect.right", 108); | 166 shouldBeEqualToNumber("entries[6].boundingClientRect.right", 108); |
| 176 shouldBeEqualToNumber("entries[6].boundingClientRect.top", -92); | 167 shouldBeEqualToNumber("entries[6].boundingClientRect.top", -92); |
| 177 shouldBeEqualToNumber("entries[6].boundingClientRect.bottom", 8); | 168 shouldBeEqualToNumber("entries[6].boundingClientRect.bottom", 8); |
| 178 shouldBeEqualToNumber("entries[6].intersectionRect.left", 8); | 169 shouldBeEqualToNumber("entries[6].intersectionRect.left", 8); |
| 179 shouldBeEqualToNumber("entries[6].intersectionRect.right", 108); | 170 shouldBeEqualToNumber("entries[6].intersectionRect.right", 108); |
| 180 shouldBeEqualToNumber("entries[6].intersectionRect.top", 0); | 171 shouldBeEqualToNumber("entries[6].intersectionRect.top", 0); |
| 181 shouldBeEqualToNumber("entries[6].intersectionRect.bottom", 8); | 172 shouldBeEqualToNumber("entries[6].intersectionRect.bottom", 8); |
| 182 shouldBeEqualToNumber("entries[6].rootBounds.left", 0); | 173 shouldBeEqualToNumber("entries[6].rootBounds.left", 0); |
| 183 shouldBeEqualToNumber("entries[6].rootBounds.right", 785); | 174 shouldBeEqualToNumber("entries[6].rootBounds.right", 785); |
| 184 shouldBeEqualToNumber("entries[6].rootBounds.top", 0); | 175 shouldBeEqualToNumber("entries[6].rootBounds.top", 0); |
| 185 shouldBeEqualToNumber("entries[6].rootBounds.bottom", 600); | 176 shouldBeEqualToNumber("entries[6].rootBounds.bottom", 600); |
| 186 shouldBeCloseTo("entries[6].intersectionRatio", intersectionRatio(entries[6]
), .0001); | 177 shouldBeCloseTo("entries[6].intersectionRatio", intersectionRatio(entries[6]
), .0001); |
| 187 shouldEvaluateToSameObject("entries[6].target", target); | 178 shouldEvaluateToSameObject("entries[6].target", target); |
| 188 } | 179 } |
| 189 document.scrollingElement.scrollTop = 820; | 180 document.scrollingElement.scrollTop = 820; |
| 190 requestAnimationFrame(step8); | 181 waitForNotification(step8); |
| 191 } | 182 } |
| 192 | 183 |
| 193 function step8() { | 184 function step8() { |
| 194 entries = entries.concat(observer.takeRecords()); | |
| 195 shouldBeEqualToNumber("entries.length", 8); | 185 shouldBeEqualToNumber("entries.length", 8); |
| 196 if (entries.length > 7) { | 186 if (entries.length > 7) { |
| 197 shouldBeEqualToNumber("entries[7].boundingClientRect.left", 8); | 187 shouldBeEqualToNumber("entries[7].boundingClientRect.left", 8); |
| 198 shouldBeEqualToNumber("entries[7].boundingClientRect.right", 108); | 188 shouldBeEqualToNumber("entries[7].boundingClientRect.right", 108); |
| 199 shouldBeEqualToNumber("entries[7].boundingClientRect.top", -112); | 189 shouldBeEqualToNumber("entries[7].boundingClientRect.top", -112); |
| 200 shouldBeEqualToNumber("entries[7].boundingClientRect.bottom", -12); | 190 shouldBeEqualToNumber("entries[7].boundingClientRect.bottom", -12); |
| 201 shouldBeEqualToNumber("entries[7].intersectionRect.left", 0); | 191 shouldBeEqualToNumber("entries[7].intersectionRect.left", 0); |
| 202 shouldBeEqualToNumber("entries[7].intersectionRect.right", 0); | 192 shouldBeEqualToNumber("entries[7].intersectionRect.right", 0); |
| 203 shouldBeEqualToNumber("entries[7].intersectionRect.top", 0); | 193 shouldBeEqualToNumber("entries[7].intersectionRect.top", 0); |
| 204 shouldBeEqualToNumber("entries[7].intersectionRect.bottom", 0); | 194 shouldBeEqualToNumber("entries[7].intersectionRect.bottom", 0); |
| 205 shouldBeEqualToNumber("entries[7].rootBounds.left", 0); | 195 shouldBeEqualToNumber("entries[7].rootBounds.left", 0); |
| 206 shouldBeEqualToNumber("entries[7].rootBounds.right", 785); | 196 shouldBeEqualToNumber("entries[7].rootBounds.right", 785); |
| 207 shouldBeEqualToNumber("entries[7].rootBounds.top", 0); | 197 shouldBeEqualToNumber("entries[7].rootBounds.top", 0); |
| 208 shouldBeEqualToNumber("entries[7].rootBounds.bottom", 600); | 198 shouldBeEqualToNumber("entries[7].rootBounds.bottom", 600); |
| 209 shouldBeCloseTo("entries[7].intersectionRatio", intersectionRatio(entries[7]
), .0001); | 199 shouldBeCloseTo("entries[7].intersectionRatio", intersectionRatio(entries[7]
), .0001); |
| 210 shouldEvaluateToSameObject("entries[7].target", target); | 200 shouldEvaluateToSameObject("entries[7].target", target); |
| 211 } | 201 } |
| 212 finishJSTest(); | 202 finishJSTest(); |
| 213 document.scrollingElement.scrollTop = 0; | 203 document.scrollingElement.scrollTop = 0; |
| 214 } | 204 } |
| 215 </script> | 205 </script> |
| OLD | NEW |