質問編集履歴
2
改善
title
CHANGED
|
@@ -1,1 +1,1 @@
|
|
|
1
|
-
jsスクロール
|
|
1
|
+
jsスクロールにかんして
|
body
CHANGED
|
@@ -1,37 +1,15 @@
|
|
|
1
|
+
jQuery(function($){
|
|
1
|
-
|
|
2
|
+
'use strict';
|
|
2
|
-
ただ下記だと、ページの一番下を見ている状態でも更新をすると動きが始まってしまいます。
|
|
3
|
-
|
|
4
|
-
できればstartPointのところだと思うのですが、これをここより下の位置にいたらjs開始ではなく、
|
|
5
|
-
ここからここまでの間にいたら、js開始というコードに変えたいのですが、どのようにやれば良いかが分かりません。
|
|
6
|
-
|
|
7
|
-
```
|
|
8
|
-
|
|
3
|
+
var inviewObserver = new IntersectionObserver(function(entries, observer){
|
|
9
|
-
scrolltop = $(window).scrollTop();
|
|
10
|
-
|
|
4
|
+
entries.forEach(function(entry) {
|
|
11
|
-
|
|
5
|
+
if (!entry.isIntersecting) return;
|
|
12
|
-
|
|
6
|
+
var $target = $(entry.target),
|
|
13
|
-
if(flg==false){
|
|
14
|
-
mySVG.drawsvg('animate');
|
|
15
|
-
|
|
7
|
+
delay = 200;
|
|
8
|
+
if($target.hasClass('js-fv')){
|
|
9
|
+
delay = 800;
|
|
16
|
-
|
|
10
|
+
}
|
|
17
|
-
|
|
11
|
+
$target.delay(delay).queue(function() {
|
|
12
|
+
$target.addClass('is-inview').dequeue();
|
|
18
|
-
});
|
|
13
|
+
});
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
やってみたこと。
|
|
22
|
-
startPoint2というのを追加して、targetに挟んでみたのですがうまくいきませんでした。
|
|
23
|
-
|
|
24
|
-
```
|
|
25
|
-
$(window).on('scroll resize load',function(){
|
|
26
|
-
scrolltop = $(window).scrollTop();
|
|
27
|
-
windowHeight = $(window).height();
|
|
28
|
-
startPoint = scrolltop + windowHeight - 100;
|
|
29
|
-
startPoint2 = startPoint + 500
|
|
30
|
-
|
|
14
|
+
observer.unobserve( entry.target );
|
|
31
|
-
if(flg==false){
|
|
32
|
-
mySVG.drawsvg('animate');
|
|
33
|
-
flg = true;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
});
|
|
15
|
+
});
|
|
37
|
-
```
|
1
改善
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
windowHeight = $(window).height();
|
|
28
28
|
startPoint = scrolltop + windowHeight - 100;
|
|
29
29
|
startPoint2 = startPoint + 500
|
|
30
|
-
if(startPoint > target >
|
|
30
|
+
if(startPoint > target > startPoint2){
|
|
31
31
|
if(flg==false){
|
|
32
32
|
mySVG.drawsvg('animate');
|
|
33
33
|
flg = true;
|