jQuery1.7.2の使用。1.5.1までの古いバージョンでテストされています。同じ結果。
9未満のFFおよびIEでは、DOM要素の期待されるjQueryオブジェクトを返すことで正常に機能します。ただし、他のすべてでは、DOM要素のjQueryオブジェクトのjQueryオブジェクトを返します。jQueryのこれらの関数は、最終的に渡された要素がDOM要素であると想定しているため(私は多くのトレースを行いました)、これは幅または高さを取得しようとするものすべてに影響します。また、私はこれまでこの問題に遭遇したことがありません。これはすべてがうまくいかなかったサイトです。前のボタンと次のボタンの動作を確認したい場合は、まだ修正していません。click()
次のプレイリスト要素を呼び出すことになっています。この問題が原因ではありません。
コードはMediaElementJSから取得されます。
t.controls = t.container.find('.mejs-controls');
t.layers = t.container.find('.mejs-layers');
私が最終的に思いついた修正。
if(!mf.isFirefox && !(/MSIE [876]/.test(navigator.userAgent))){
t.controls = t.container.find('.mejs-controls').get(0);
t.layers = t.container.find('.mejs-layers').get(0);
}else{
t.controls = t.container.find('.mejs-controls');
t.layers = t.container.find('.mejs-layers');
}
さて、なぜ神の緑の地球上で、FFを除いて新しいブラウザでそれが悪いのですか?
ブレークポイントを設定する場合の行は次のとおりです。
- jquery + mep.js(jQueryがここにバンドルされていたため、テスト用に取り出しました)
- 次へ:4595
- 以前:4600
- jquery-1.7.2.js
- jQuery.next():5582
- jQuery.prev():5585
- jQuery.nth():5666
アップデート
他のページは影響を受けていないようです。http://www.commercialsonhold.com/messagesamples/aesthetics.htmのように。ページ上の他の何かがjQueryを台無しにしていると思い始めています。サイトはJoomla!JoomlaのMooToolsでよく問題が発生します!ただし、サイトでは通常、jQueryがまったく機能せず、1つの関数が異常に動作しているだけではありません。
アップデート
jsFiddle: http: //jsfiddle.net/h5ahY/4/