質問編集履歴

1

コードを詳細に記述

2018/05/28 09:31

投稿

yryuu
yryuu

スコア151

test CHANGED
File without changes
test CHANGED
@@ -19,3 +19,135 @@
19
19
  ロジックやサンプルなどありましたらご教示お願いいたします
20
20
 
21
21
  [http://www.yukihy.com/entry/scroll-menu](http://www.yukihy.com/entry/scroll-menu)
22
+
23
+
24
+
25
+
26
+
27
+
28
+
29
+ 現状のコードは以下になります
30
+
31
+ ```ここに言語を入力
32
+
33
+ <nav id="scroll-menu">
34
+
35
+ <ul class="scroll-menu-inner" id="scroll-menu">
36
+
37
+ <li id="category1" onClick="scrollFunction('category1')">カテゴリ1</li>
38
+
39
+ <li id="category2" onClick="scrollFunction('category2')">カテゴリ2</li>
40
+
41
+ <li id="category3" onClick="scrollFunction('category3')">カテゴリ3</li>
42
+
43
+ <li id="category4" onClick="scrollFunction('category4')">カテゴリ4</li>
44
+
45
+ <li id="category5" onClick="scrollFunction('category5')">カテゴリ5</li>
46
+
47
+ <li id="category6" onClick="scrollFunction('category6')">カテゴリ6</li>
48
+
49
+ <li id="category7" onClick="scrollFunction('category7')">カテゴリ7</li>
50
+
51
+ <li id="category8" onClick="scrollFunction('category8')">カテゴリ8</li>
52
+
53
+ <li id="category9" onClick="scrollFunction('category9')">カテゴリ9</li>
54
+
55
+ <li id="category10" onClick="scrollFunction('category10')">カテゴリ10</li>
56
+
57
+ <li id="category11" onClick="scrollFunction('category11')">カテゴリ11</li>
58
+
59
+ <li id="category12" onClick="scrollFunction('category12')">カテゴリ12</li>
60
+
61
+ <li id="category13" onClick="scrollFunction('category13')">カテゴリ13</li>
62
+
63
+ <li id="category14" onClick="scrollFunction('category14')">カテゴリ14</li>
64
+
65
+ <li id="category15" onClick="scrollFunction('category15')">カテゴリ15</li>
66
+
67
+ <li id="category16" onClick="scrollFunction('category16')">カテゴリ16</li>
68
+
69
+ <li id="category17" onClick="scrollFunction('category17')">カテゴリ17</li>
70
+
71
+ </ul>
72
+
73
+ </nav>
74
+
75
+
76
+
77
+ <script>
78
+
79
+ function scrollFunction(id){
80
+
81
+
82
+
83
+ const scrollMenu = document.getElementById('scroll-menu');
84
+
85
+ //タグの位置
86
+
87
+ const selectedTag = document.getElementById(id);
88
+
89
+ // 画面サイズータグの位置でスライドさせていますがここのロジックがわからないです
90
+
91
+ const tabWidth =window.parent.screen.width-selectedTag.getBoundingClientRect().left/2;
92
+
93
+ scrollMenu.scrollLeft = (tabWidth);
94
+
95
+ }
96
+
97
+ </script>
98
+
99
+
100
+
101
+ <style>
102
+
103
+ #scroll-menu {
104
+
105
+ height: 40px;/*メニューの縦幅*/
106
+
107
+ background-color: #444;/*メニューの背景色*/
108
+
109
+ overflow-x: scroll;
110
+
111
+ overflow-y: hidden;
112
+
113
+ -webkit-overflow-scrolling: touch;
114
+
115
+ }
116
+
117
+ #scroll-menu .scroll-menu-inner {
118
+
119
+ list-style-type: none;
120
+
121
+ width: 3000px;/*メニューの横幅*/
122
+
123
+ height: 100%;
124
+
125
+ margin: 0;
126
+
127
+ padding: 0;
128
+
129
+ text-align: center;
130
+
131
+ }
132
+
133
+ #scroll-menu li {
134
+
135
+ float: left;
136
+
137
+ height: 100%;
138
+
139
+ color:white
140
+
141
+ }
142
+
143
+
144
+
145
+ #scroll-menu a:active {
146
+
147
+ background-color: #555;/*クリック時の背景色*/
148
+
149
+ }
150
+
151
+ </style>
152
+
153
+ ```