0

我正在尝试通过更改 div 背景图像属性来放大图像的一部分。我不确定这是否是正确的方法,但到目前为止它有效!唯一的问题是通过 .css() 传递多个属性。当我单独调用它们但不一起调用时,这些属性有效!你能告诉我为什么这段代码不起作用吗?

$(document).ready(function () {
    $(".zoom").click(function () {
        $('.gal').css({
            background-size: "200% 200%",
            background-position: "center"
        });
    });
});

有没有更好的想法来创建一个谷歌地图风格的图像放大?坦斯克

4

1 回答 1

4

改变

$('.gal').css({
  background-size: "200% 200%",
  background-position : "center"
});

到 DOM 属性表示法:

$('.gal').css({
  backgroundSize: "200% 200%",
  backgroundPosition : "center"
});

或在 CSS 属性名称周围添加引号:

$('.gal').css({
  'background-size': "200% 200%",
  'background-position' : "center"
});

请参阅文档

此外,jQuery 可以同样解释多词属性的 CSS 和 DOM 格式。例如,jQuery 理解并返回正确的值 .css({'background-color': '#ffe', 'border-left': '5px solid #ccc'}) 和 .css({backgroundColor: '# ffe',borderLeft:'5px solid #ccc'})。请注意,对于 DOM 表示法,属性名称周围的引号是可选的,但对于 CSS 表示法,由于名称中的连字符,它们是必需的。

于 2013-06-14T17:16:44.433 回答