質問編集履歴

2

エラー箇所の補足追加

2019/03/06 10:25

投稿

memoranote
memoranote

スコア13

test CHANGED
File without changes
test CHANGED
@@ -150,9 +150,9 @@
150
150
 
151
151
 
152
152
 
153
- destroySliderが実行されていないのが原因かとおもすが、
153
+ destroySliderが実行されていないのが原因なのは分ってるのですが、
154
154
 
155
- それがflagの真偽がしで動く動かないの違いが良く分かっておりません。
155
+ それがflagの真偽がしで何故、正しく動く動かないの違いが出てくるのかが良く分かっておりません。
156
156
 
157
157
 
158
158
 

1

画像の追加

2019/03/06 10:25

投稿

memoranote
memoranote

スコア13

test CHANGED
File without changes
test CHANGED
@@ -125,3 +125,35 @@
125
125
  - if文での条件分岐の際に、flagを置いて真偽を判定する記述を加えないといけないのは何故でしょうか?if文の中でtrueとfalseを実行の度に入れ替えているという意味は分かるのですが、これをそもそも分岐の際に入れないと動かなくなってしまうロジックが分かっておりません。
126
126
 
127
127
  - sliderという変数を予め値が空の状態で定義したものを、実行のタイミングで初めて$('.bx_Slider').bxSlider();という形で入れていると思います。解決済みのデータではdestroySliderが書かれている方の記述も変数sliderで記述していますが、こちらが正しく動く理由が分かりません。関数sliderSetの外側で予め変数sliderに$('.bx_Slider').bxSlider()を入れておけば、条件分岐に関わらず動いてくれるのかなというのは分かるのですが、これをif文の中で書いてもelse側で正しく処理されている理由は何故でしょうか。現に、動かなかった従来のソースコードだと、destroySliderのところでエラーが吐かれます。こちらの処理が本来は正しいのではないかなと思うので、意味が分からなくなってきました。
128
+
129
+
130
+
131
+ ### 従来のソースコードで起こっていたエラー
132
+
133
+
134
+
135
+ ![イメージ説明](6cb7bf67fd092b043d9de5cf0006dbe1.jpeg)
136
+
137
+
138
+
139
+ ページの読み込み時にPCサイズだった場合、このエラーが出ます。
140
+
141
+ さらにリサイズするたびに、左上の数字がどんどん加算されていきます。
142
+
143
+ これはリサイズ時に都度イベントが発生しているからというのは理解しております。
144
+
145
+
146
+
147
+ リサイズをして、スマホ幅になった瞬間に、スライダーが実行され、左の数字は一旦止まりますが、
148
+
149
+ 再度PC幅に変更をしても、スライダーが解除されず、また左上の数字の加算がリスタートします。
150
+
151
+
152
+
153
+ destroySliderが実行されていないのが原因かとおもいますが、
154
+
155
+ それがflagの真偽があるなしで動く動かないの違いが良く分かっておりません。
156
+
157
+
158
+
159
+ 因みにこちら以外のエラーは吐いておりませんので、別の箇所が原因ということはないかと思います。