jQueryで作ったWEBシステムを評価してくれる人に見せたら…FireFoxだと動かないんですね…
って言われて、「え?」たしかにfireFoxとchromeで動作が違う…。
あまりこういうことは経験的にないのだけど…
なんでかなーと思ったら、ready…つまり$(function() {})の中に、
$(“window”).on(“load”)などをjQuery3は内包してはいけないからっぽい。
早い話がjQuery3の使い方を間違えているので、動作の違いが生まれた。
あまり、実行順序を考慮していないのですが…。
(参考)
https://qiita.com/mimoe/items/74cb3a01a30162759fdd
readyの後にloadが動作するのらしいですが、、
readyのなかにloadのイベントをいれてはいけないらしい。
firefoxだと動きません。なんで。
私は実験的(!)に、
readyの中にclassをつくってMVC化しているので…
loadの処理だけを例外的にreadyの外に出すという…気持ち悪いことをしたくない。
たぶんそうすればChromeとFirefoxの動作違いの問題は解決する気がする。
だけど、それは嫌なので結局jQuery2に戻してしまいました。
なんらかの理由で3を使いたいシーンでは苦しむかもしれませんが
(というかjQuery3に適したコーディングを考慮しないといけませんが)
コメント