1

jQuery 関数が IE 8 & 9 で動作しないようです。

div を jQuery に合わせたいので、次の関数を作成しました。

imageAlign = function(){
    var image = $j(this); 
    var imageWidth = image.width();
    var imageMargin = imageWidth / 2;
    image.css("margin-right", -imageMargin);
};
$j('.image-wrap').each(imageAlign);

$j を jQuery.noConflict(); として使用します。ワードプレスのせい。

IE 8 & 9 では、関数はクラス .image-wrap を持つ最初の div でのみ機能します。

関数なしでコードを使用すると、すべてのブラウザーで正常に動作します。

var image = $j('.image-wrap'); 
var imageWidth = image.width();
var imageMargin = imageWidth / 2;
image.css("margin-right", -imageMargin);

私は何を間違っていますか?

編集:

私のコードは準備が整ったドキュメント内にあります:

jQuery(document).ready(function($j) {
        var $j = jQuery.noConflict();

        <!-- Code -->

});

編集 重要

私は間違った質問をしたと思います!以下の答えで、私は何か他のものを発見しました。IE 8 および 9 では、.image-wrap div (最初のものを除く) は負のマージンを取得します。しかし、この負のマージンの権利の値は正しくありません。したがって、関数は機能しますが、正しくはありません。

お時間をいただき申し訳ありません... とにかく、助けてくれてありがとう!

4

0 に答える 0