質問編集履歴
7
参照イシュー追記
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
|
1
|
+
AndroidのみscrollTopが動かない
|
body
CHANGED
@@ -3,7 +3,8 @@
|
|
3
3
|
[JSFiddleサンプル](https://jsfiddle.net/r64jf6Lp/3/)
|
4
4
|
|
5
5
|
###発生している問題・エラーメッセージ
|
6
|
-
PCブラウザ、iOSでは狙い通り動いてくれるのですが、Androidでのみ発火してくれません。
|
6
|
+
PCブラウザ、iOSでは狙い通り動いてくれるのですが、AndroidでのみscrollTopが発火してくれません。
|
7
|
+
参照:[https://code.google.com/p/android/issues/detail?id=19625](https://code.google.com/p/android/issues/detail?id=19625)
|
7
8
|
|
8
9
|
###該当のソースコード
|
9
10
|
```html
|
6
コード二つ目別に
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
###前提・実現したいこと
|
2
2
|
jQueryで、aタグをクリックした際に同一ページ中のアンカー(ハッシュ / #)にスクロールさせる機能(Scrollspy)を実装しようとしています。
|
3
|
-
[JSFiddleサンプル](https://jsfiddle.net/r64jf6Lp/
|
3
|
+
[JSFiddleサンプル](https://jsfiddle.net/r64jf6Lp/3/)
|
4
4
|
|
5
5
|
###発生している問題・エラーメッセージ
|
6
6
|
PCブラウザ、iOSでは狙い通り動いてくれるのですが、Androidでのみ発火してくれません。
|
@@ -37,7 +37,7 @@
|
|
37
37
|
2. bodyとhtmlをブラウザごとに厳密に区別
|
38
38
|
3. .animate実行前に.css('overflow', 'hidden')、実行後に.css('overflow', 'hidden')追記
|
39
39
|
これでもまだ動きません。
|
40
|
-
修正後コード
|
40
|
+
修正後コード [JSFiddleサンプル](https://jsfiddle.net/r64jf6Lp/4/)
|
41
41
|
```javascript
|
42
42
|
var scrollTag = ( window.chrome || 'WebkitAppearance' in document.documentElement.style )? 'body' : 'html';
|
43
43
|
$('a[href^="#"]').on('click', function(e) {
|
5
overflow追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -35,6 +35,7 @@
|
|
35
35
|
### 試してみたこと
|
36
36
|
1. setTimeout追記
|
37
37
|
2. bodyとhtmlをブラウザごとに厳密に区別
|
38
|
+
3. .animate実行前に.css('overflow', 'hidden')、実行後に.css('overflow', 'hidden')追記
|
38
39
|
これでもまだ動きません。
|
39
40
|
修正後コード
|
40
41
|
```javascript
|
4
リンクに修正後コード
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
###前提・実現したいこと
|
2
2
|
jQueryで、aタグをクリックした際に同一ページ中のアンカー(ハッシュ / #)にスクロールさせる機能(Scrollspy)を実装しようとしています。
|
3
|
-
[JSFiddleサンプル](https://jsfiddle.net/r64jf6Lp/
|
3
|
+
[JSFiddleサンプル](https://jsfiddle.net/r64jf6Lp/4/)
|
4
4
|
|
5
5
|
###発生している問題・エラーメッセージ
|
6
6
|
PCブラウザ、iOSでは狙い通り動いてくれるのですが、Androidでのみ発火してくれません。
|
3
試したこと追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -32,4 +32,26 @@
|
|
32
32
|
###補足情報(言語/FW/ツール等のバージョンなど)
|
33
33
|
jQuery v3.2.1
|
34
34
|
|
35
|
+
### 試してみたこと
|
36
|
+
1. setTimeout追記
|
37
|
+
2. bodyとhtmlをブラウザごとに厳密に区別
|
38
|
+
これでもまだ動きません。
|
39
|
+
修正後コード
|
40
|
+
```javascript
|
41
|
+
var scrollTag = ( window.chrome || 'WebkitAppearance' in document.documentElement.style )? 'body' : 'html';
|
42
|
+
$('a[href^="#"]').on('click', function(e) {
|
43
|
+
e.preventDefault();
|
44
|
+
var speed = 600;
|
45
|
+
var href = $(this).attr('href');
|
46
|
+
var target = $(href == "#" || href == "" ? 'html' : href);
|
47
|
+
var headerHeight = 85;
|
48
|
+
var position = target.get(0).offsetTop - headerHeight;
|
49
|
+
setTimeout(function() {
|
50
|
+
$(scrollTag).css('overflow', 'hidden').animate({
|
51
|
+
scrollTop: position
|
52
|
+
}, speed).css('overflow', 'auto');
|
53
|
+
}, 50);
|
54
|
+
});
|
55
|
+
```
|
56
|
+
|
35
57
|
何卒よろしくお願いいたします。
|
2
イージングの記述除去
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
###前提・実現したいこと
|
2
2
|
jQueryで、aタグをクリックした際に同一ページ中のアンカー(ハッシュ / #)にスクロールさせる機能(Scrollspy)を実装しようとしています。
|
3
|
-
[JSFiddleサンプル](https://jsfiddle.net/r64jf6Lp/
|
3
|
+
[JSFiddleサンプル](https://jsfiddle.net/r64jf6Lp/3/)
|
4
4
|
|
5
5
|
###発生している問題・エラーメッセージ
|
6
6
|
PCブラウザ、iOSでは狙い通り動いてくれるのですが、Androidでのみ発火してくれません。
|
@@ -24,7 +24,7 @@
|
|
24
24
|
var position = target.get(0).offsetTop - headerHeight;
|
25
25
|
$('body, html').animate({
|
26
26
|
scrollTop: position
|
27
|
-
}, speed
|
27
|
+
}, speed);
|
28
28
|
});
|
29
29
|
});
|
30
30
|
```
|
1
リンク先JSを修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
###前提・実現したいこと
|
2
2
|
jQueryで、aタグをクリックした際に同一ページ中のアンカー(ハッシュ / #)にスクロールさせる機能(Scrollspy)を実装しようとしています。
|
3
|
-
[JSFiddleサンプル](https://jsfiddle.net/r64jf6Lp/
|
3
|
+
[JSFiddleサンプル](https://jsfiddle.net/r64jf6Lp/2/)
|
4
4
|
|
5
5
|
###発生している問題・エラーメッセージ
|
6
6
|
PCブラウザ、iOSでは狙い通り動いてくれるのですが、Androidでのみ発火してくれません。
|
@@ -14,7 +14,7 @@
|
|
14
14
|
<div id="anchor">Here!</div>
|
15
15
|
```
|
16
16
|
```javascript
|
17
|
-
function() {
|
17
|
+
$(function() {
|
18
18
|
$('a[href^="#"]').on('click', function(e) {
|
19
19
|
e.preventDefault();
|
20
20
|
var speed = 600;
|