回答編集履歴

2

調整

2024/07/19 02:53

投稿

yambejp
yambejp

スコア115896

test CHANGED
@@ -1,3 +1,37 @@
1
1
  おそらく高さの計算がおかしいのだと思いますが再現できないのでなんとも言えません。
2
2
  jsonを元に処理しているのであればscrollでaddさせるのは無意味だと思います。
3
3
  (同じjsonを取得するなら前のjsonを再利用すればよいような・・・)
4
+
5
+ # 参考
6
+
7
+ 高さで計算するのではなく交差で追加を判断すればよいかも
8
+ ```html
9
+ <script>
10
+ window.addEventListener('DOMContentLoaded', ()=>{
11
+ const json_data=[1,2,3,4,5]; // jsonのデータは初回一回読めば良い
12
+ const add=()=>{
13
+ json_data.forEach(x=>document.querySelector('footer').before(Object.assign(document.createElement('div'),{className:"dummy",textContent:x})));
14
+ }
15
+ const io=()=>{
16
+ const observer = new IntersectionObserver(changes=>{
17
+ for (let change of changes) {
18
+ if(change.intersectionRatio > 0) add();
19
+ }
20
+ });
21
+ observer.observe(document.querySelector('footer'));
22
+ }
23
+ io();
24
+ });
25
+ </script>
26
+ <style>
27
+ .dummy{
28
+ height:80%;
29
+ }
30
+ .dummy:nth-child(odd){
31
+ background-Color:gray;
32
+ }
33
+ </style>
34
+ <body>
35
+ <footer>footer</footer>
36
+ </body>
37
+ ```

1

typo

2024/07/19 02:11

投稿

yambejp
yambejp

スコア115896

test CHANGED
@@ -1,3 +1,3 @@
1
- おそらく高さの計算がおかしいのだと思いますg再現できないのでなんとも言えません。
1
+ おそらく高さの計算がおかしいのだと思います再現できないのでなんとも言えません。
2
2
  jsonを元に処理しているのであればscrollでaddさせるのは無意味だと思います。
3
3
  (同じjsonを取得するなら前のjsonを再利用すればよいような・・・)