タイトル通りです。
YUI Compressor や UglifyJS 2 を利用した オンラインのJavasctipt 圧縮サービスを利用していたら、何やら謎のエラーが出るようになった。

エラーが出ちゃうオンライン圧縮サービス
Online JavaScript/CSS Compressor  ・JS Minifier

昨日か一昨日まで普通に圧縮できていた Javasctipt が syntax errorになってしまう。1年前、2年前にバックアップを取っていた (その時は正常作動していた) *.js も、syntax errorになってしまう。

{}の閉じ忘れも、文法ミスも、ドコにも見当たらない・・・・。
なんだコレ('Α`)

原因は関数名だった

どうやら関数名に「float」が使えなくなったらしい。

  • function float(){ var hoge = "hoge"; }
    ▲エラーが出る
  • function xxxx(){ var hoge = "hoge"; }
    ▲エラーが出ない

気が付くまでに2~3時間かかってしまった。
ちゅうか、こんなん分かるワケないでしょーが( ̄▽ ̄;)
こんなん何時決まったんだ。
ドコを読みに行けばこういう情報拾えるんだヾ(*´Д`*)ノ

兆候は確かにあった

2~3か月くらい前から、「function float()」を使っていた部分のjavascriptが (時々) ブラウザ上でも正常作動しなくなっていた。それに連動して FancyZoomも作動が怪しくなっていた。

function float()は10回表示すれば7~8回は正常作動するし、全然再現性が取れないので、Adsenseの広告の一部に相性が悪いjsファイルが使われているのかな?何か変数名が被っているのかな?なんて思っていたけれど・・・・

まさかこの関数名そのものが 原因となって誤作動して、しかも YUI Compressor や UglifyJS 2 に弾かれちゃう事態が発生するなんて思いもよらなかったです( ̄▽ ̄;)

翌日追記

関数名を変更してもフロート部分のJavascriptはやはり時々作動しなくなる。。。orz
変更前より発生頻度は減っているものの、根本的な解決には至らなかったようだ。
こうなると、やはり何かの広告javascriptと干渉しているのかな・・・・(´・ω・`)