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(); 因为WordPress。

在 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