0

我不是 JavaScript 专家,但我有一个简单的功能,并且在除 IE8 和 7 之外的所有浏览器中都能正常工作

function setSelected() {
    var backgroundPos = $('div.eventJumpToContainer').find('.selected').css('backgroundPosition').split("");
    var xPos = backgroundPos[0];
    var yPos = '-100px';
    var toSet = xPos + ' ' + yPos;
    $('div.eventJumpToContainer').find('.selected').css('backgroundPosition', toSet);
    $('div.eventJumpToContainer span.jumpDate').not('.selected').each(function () {
        var backgroundPos = $(this).css('backgroundPosition').split(" ");
        var xPos = backgroundPos[0];
        $(this).css('backgroundPosition', xPos + ' top');
    });
}

在 IE9 中单步执行此代码时:

$('div.eventJumpToContainer').find('.selected').css('backgroundPosition') = ‘3600px 0%’

但在 IE8 中,此表达式为空。

我已经尝试了很多东西,但我无法得到它!提前致谢

4

1 回答 1

0

您在 jQuery css 函数中使用 javascript 语法作为背景位置。

例子:

object.style.backgroundPosition="center"

在 CSS 中,属性实际上是'background-position'

尝试这个:

$('div.eventJumpToContainer').find('.selected').css('background-position') = ‘3600px 0%’

如果这不起作用,您可能需要使用这些-ms-background-position-x -ms-background-position-y属性。

于 2012-12-21T19:36:31.567 回答