Webkit ブラウザーでのみ正常に動作するこのアコーディオンを作成しました。Webkit 以外のブラウザーで何が壊れているのかわかりません。
http://jsfiddle.net/gurtfrobe/SMjxK/1/
粗雑なコードで申し訳ありませんが、私は Javascript に熱中しているわけではありません。
すべてのご意見をお待ちしております。
Webkit ブラウザーでのみ正常に動作するこのアコーディオンを作成しました。Webkit 以外のブラウザーで何が壊れているのかわかりません。
http://jsfiddle.net/gurtfrobe/SMjxK/1/
粗雑なコードで申し訳ありませんが、私は Javascript に熱中しているわけではありません。
すべてのご意見をお待ちしております。
だから私はそれの一部を理解しました。Firefox、Opera、IE9でも動作するようになりました。
要素の位置をパーセンテージで取得できるのは、Webkitブラウザーのみです。Firefoxなどは値をピクセルに変換します。したがって、LEFT値がパーセンテージとして設定されていると仮定します。
var myvar = $('#myitem').css('left');
ChromeとSafariにパーセンテージ値を保存しますが、他のブラウザはそのパーセンテージをピクセル値に変換します。
これを回避するには、最初にLEFT値をインラインスタイルとして割り当ててから、jQueryが値を取得する方法を変更する必要があります。今では次のようになります。
var myitem = $('#myitem');
var myitemleft = myitem[0].style.left;
注意してください、おそらくそのコードの短縮版がありますが、私の知識はそれほど素晴らしいものではありません。
IE7&8で動作しない原因を誰かが知っている場合は、助けていただければ幸いです。私がそれを解決したら、ここで私の発見を共有します。
最後のIE、FF、およびChromeの下でスクリプトによって友人と作成しました http://jsfiddle.net/quadrian/z94baosx/