質問編集履歴

2

実際に作成したjavascriptとhtmlのソースを追加しました。

2018/07/19 17:27

投稿

takopo
takopo

スコア484

test CHANGED
File without changes
test CHANGED
@@ -62,6 +62,168 @@
62
62
 
63
63
 
64
64
 
65
+ 実際のソースはけっこう煩雑になっているのですが以下に記載させていただきます。
66
+
67
+ 実はボタンをクリックではなく、サムネイルをマウスオーバーで、拡大部に画像とテキストを表示させるようにしています。ここのイベント部分が少し重複気味だなと思い、質問させていただきました。
68
+
69
+ ```javascript
70
+
71
+ $(function(){
72
+
73
+ $('.js-gallery').each(function() {
74
+
75
+ var $_self = $(this);
76
+
77
+
78
+
79
+ function DisplayImage(num) {
80
+
81
+ var img_full = $_self.find('.js-change-img' + num + ' img').attr('src');
82
+
83
+ $_self.find('.js-gallery-target img').fadeOut('fast', function() {
84
+
85
+ $_self.find('.js-gallery-target img').attr('src', img_full).fadeIn();
86
+
87
+ for (var i = 1; i <= 8; i++) {
88
+
89
+ $_self.find('.js-change-txt' + i).hide();
90
+
91
+ }
92
+
93
+ $_self.find('.js-change-txt' + num).fadeIn();
94
+
95
+ });
96
+
97
+ }
98
+
99
+
100
+
101
+ $_self.find('.js-change-img1 img').mouseover(function() {
102
+
103
+ DisplayImage(1);
104
+
105
+ });
106
+
107
+ $_self.find('.js-change-img2 img').mouseover(function() {
108
+
109
+ DisplayImage(2);
110
+
111
+ });
112
+
113
+ $_self.find('.js-change-img3 img').mouseover(function() {
114
+
115
+ DisplayImage(3);
116
+
117
+ });
118
+
119
+ $_self.find('.js-change-img4 img').mouseover(function() {
120
+
121
+ DisplayImage(4);
122
+
123
+ });
124
+
125
+ $_self.find('.js-change-img5 img').mouseover(function() {
126
+
127
+ DisplayImage(5);
128
+
129
+ });
130
+
131
+ $_self.find('.js-change-img6 img').mouseover(function() {
132
+
133
+ DisplayImage(6);
134
+
135
+ });
136
+
137
+ $_self.find('.js-change-img7 img').mouseover(function() {
138
+
139
+ DisplayImage(7);
140
+
141
+ });
142
+
143
+ $_self.find('.js-change-img8 img').mouseover(function() {
144
+
145
+ DisplayImage(8);
146
+
147
+ });
148
+
149
+ });
150
+
151
+ });
152
+
153
+ ```
154
+
155
+
156
+
157
+ ```html
158
+
159
+ <div class="js-gallery">
160
+
161
+ <!-- 拡大部 -->
162
+
163
+ <div class="c-gallery__large js-gallery-target">
164
+
165
+ <div class="c-gallery__large-img"><img src="images/common/sample/sample01.jpg" alt="" style="display: inline;"></div>
166
+
167
+
168
+
169
+ <!-- テキスト -->
170
+
171
+ <div class="js-change-txt1" style="display: block;">テキスト1テキスト1テキスト1テキスト1</div>
172
+
173
+ <div class="js-change-txt2" style="display: none;">テキスト2テキスト2テキスト2テキスト2</div>
174
+
175
+ <div class="js-change-txt3" style="display: none;">テキスト3テキスト3テキスト3テキスト3</div>
176
+
177
+ <div class="js-change-txt4" style="display: none;">テキスト4テキスト4テキスト4テキスト4</div>
178
+
179
+ <div class="js-change-txt5" style="display: none;">テキスト5テキスト5テキスト5テキスト5</div>
180
+
181
+ <div class="js-change-txt6" style="display: none;">テキスト6テキスト6テキスト6テキスト6</div>
182
+
183
+ <div class="js-change-txt7" style="display: none;">テキスト7テキスト7テキスト7テキスト7</div>
184
+
185
+ <div class="js-change-txt8" style="display: none;">テキスト8テキスト8テキスト8テキスト8</div>
186
+
187
+ </div>
188
+
189
+
190
+
191
+
192
+
193
+ <!-- サムネイル -->
194
+
195
+ <div class="c-gallery__thumbs">
196
+
197
+ <div class="js-change-img1"><img src="images/sample01.jpg" alt=""></div>
198
+
199
+ <div class="js-change-img2"><img src="images/sample02.jpg" alt=""></div>
200
+
201
+ <div class="js-change-img3"><img src="images/sample03.jpg" alt=""></div>
202
+
203
+ <div class="js-change-img4"><img src="images/sample04.jpg" alt=""></div>
204
+
205
+ <div class="js-change-img5"><img src="images/sample05.jpg" alt=""></div>
206
+
207
+ <div class="js-change-img6"><img src="images/sample06.jpg" alt=""></div>
208
+
209
+ <div class="js-change-img7"><img src="images/sample07.jpg" alt=""></div>
210
+
211
+ <div class="js-change-img8"><img src="images/sample08.jpg" alt=""></div>
212
+
213
+ </div>
214
+
215
+
216
+
217
+ </div>
218
+
219
+ ```
220
+
221
+
222
+
223
+
224
+
225
+
226
+
65
227
  低レベルな質問ですみません。
66
228
 
67
229
  よろしくお願いいたします。

1

htmlのソースを追加しました。

2018/07/19 17:26

投稿

takopo
takopo

スコア484

test CHANGED
File without changes
test CHANGED
@@ -42,6 +42,26 @@
42
42
 
43
43
  ```
44
44
 
45
+
46
+
47
+ htmlは以下のような形になっております。(質問用に少し簡明にしてあります。)
48
+
49
+ ```html
50
+
51
+ <img class="btn1" src="btn.png">
52
+
53
+ <img class="btn2" src="btn.png">
54
+
55
+ <img class="btn3" src="btn.png">
56
+
57
+ <img class="btn4" src="btn.png">
58
+
59
+ <img class="btn5" src="btn.png">
60
+
61
+ ```
62
+
63
+
64
+
45
65
  低レベルな質問ですみません。
46
66
 
47
67
  よろしくお願いいたします。