我不是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中,此表达式为空。
我尝试了很多东西,但我无法得到它!提前致谢
答案 0 :(得分: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
属性。