Jquery在顶层设置动画和元素

Jquery在顶层设置动画和元素,jquery,Jquery,我是新的jquery,现在我试着用.animate做一些事情 我从带有图像的div构建网格,并缩放其中一幅图像。但当我缩放一个元素时,另一个元素会改变位置。我应该怎么做才能把这个缩放的元素放到像其他层一样的地方——我想把它放大,但要放在其他图像的上面。我想我必须复制这个div然后放大它?或者,也许在actionscript的“深度”中,我可以将对象移动到更大的深度 我的代码非常简单: $('.profile').hover( function() { $(this).animate({

我是新的jquery,现在我试着用.animate做一些事情

我从带有图像的div构建网格,并缩放其中一幅图像。但当我缩放一个元素时,另一个元素会改变位置。我应该怎么做才能把这个缩放的元素放到像其他层一样的地方——我想把它放大,但要放在其他图像的上面。我想我必须复制这个div然后放大它?或者,也许在actionscript的“深度”中,我可以将对象移动到更大的深度

我的代码非常简单:

$('.profile').hover(
function() {
    $(this).animate({ 'zoom': 1.05 }, 400);

},
function() {
    $(this).animate({ 'zoom': 1 }, 400);
});

将z-index属性设置为一个较大的数字,它将位于其他元素的顶部

$('.profile').hover(
function() {
    $(this).css("z-index", "999").animate({ 'zoom': 1.05 }, 400);

},
function() {
    $(this).css("z-index", "0").animate({ 'zoom': 1 }, 400);
});
您需要绝对定位元素,以使它们在缩放时不移动。添加了一个用于绝对定位的示例JSFIDLE

另一个JSFIDLE在相对定位元素内部使用绝对定位,以防需要:

如果您只是想要缩放功能,请删除
marginLeft
'width'
'height'
更改,因为我只是将此作为其他元素不移动的示例,因为它们是绝对定位的


更有趣的是:

将z-index属性设置为一个高值,它将位于其他元素之上

$('.profile').hover(
function() {
    $(this).css("z-index", "999").animate({ 'zoom': 1.05 }, 400);

},
function() {
    $(this).css("z-index", "0").animate({ 'zoom': 1 }, 400);
});
您需要绝对定位元素,以使它们在缩放时不移动。添加了一个用于绝对定位的示例JSFIDLE

另一个JSFIDLE在相对定位元素内部使用绝对定位,以防需要:

如果您只是想要缩放功能,请删除
marginLeft
'width'
'height'
更改,因为我只是将此作为其他元素不移动的示例,因为它们是绝对定位的



更有趣的是:

首先给出您的意思、示例和您尝试过的内容(将代码放在此处)?在缩放之前,您可以在div上设置一个
z-index
,将其设置为一个高数字。。。缩放后,设置为一个较低的数字。当我更改z-index时,其他元素将保留在网格中的位置?缩放仅在internet Explorer中受支持。在chrome works和firefox中,首先给出您的意思、示例以及您尝试过的内容(将代码放在此处)?在缩放之前,您可以在div上设置一个
z-index
,将其设置为高数值。。。缩放后,设置为一个较低的数字。当我更改z索引时,其他元素将保留在网格中的位置?缩放仅在internet Explorer中受支持。在chrome works和firefox toook中,可能我不知道怎么说。。。z-index没有任何变化。添加了2个jsfiddle,您可以在其中看到这一点。如果这回答了您的问题,请将其标记为已解决!但现在我有了下一个问题——当我将位置更改为绝对时,动态加载的每个元素都超过了另一个元素——我知道绝对位置忽略了边距、浮动和位置边距。我怎样才能改变它?在您的示例中,有为div定义的ID,但我已将其动态加载。@efectiva-您可以在CSS中为每个div指定一个宽度,即使它是动态加载的,它也会自动从CSS规则中获取该宽度。为了进一步帮助您,我必须看一个您正在谈论的示例。您还应该根据元素的宽度定义
left
css值。如果它们的宽度都一样,那么这就很容易了。好吧,也许我不知道怎么说。。。z-index没有任何变化。添加了2个jsfiddle,您可以在其中看到这一点。如果这回答了您的问题,请将其标记为已解决!但现在我有了下一个问题——当我将位置更改为绝对时,动态加载的每个元素都超过了另一个元素——我知道绝对位置忽略了边距、浮动和位置边距。我怎样才能改变它?在您的示例中,有为div定义的ID,但我已将其动态加载。@efectiva-您可以在CSS中为每个div指定一个宽度,即使它是动态加载的,它也会自动从CSS规则中获取该宽度。为了进一步帮助您,我必须看一个您正在谈论的示例。您还应该根据元素的宽度定义
left
css值。如果它们都是相同的宽度,那么这就很容易了。