0

当浏览器调整大小时,我设置了以下属性,但 Firefox 仅识别位置:绝对,但也不识别左侧属性。在 Chrome 中这是正常的。

查询:

jQuery('.quick-access').attr('style', 'position:absolute; left: -100px !important');

它根本不会改变左边的位置,但 Chrome 会。

有任何想法吗?

此外,它需要是内联的,因为它有一些内联规则开始。

编辑:

我也尝试了 .css 方法,但它不适用。

       jQuery('.quick-access').css({
            'position' : 'absolute',
            'left' : '-100px !important'
       });

我尝试取出 !important 但它无论如何都不起作用。

4

3 回答 3

2

!important这种方式在 jquery 中不起作用....我建议您使用该样式创建一个类并使用添加类addClass

这是你可以做的 -

CSS -

.offset {
  position : absolute;
  left : -100px !important;
}

js -

jQuery('.quick-access').addClass('offset');
于 2013-05-16T11:04:16.347 回答
2

除非您attr()出于特定原因使用该方法,否则css()像这样使用 jQuery 方法会更容易:

$('.quick-access').css({
    position: 'absolute',
    left: -100
});

您不能指定!important使用 jQuerycss()方法或我所知的任何方法...

更新

实现您想要的另一种方法是简单地添加/更改有class问题的元素(.quick-access)。

你可以这样做:

$('.quick-access').addClass('newStyles');

然后你可以设置newStyles覆盖原来的样式:

.newStyles {
    position: absolute;
    left: -100px !important;
}
于 2013-05-16T10:59:23.730 回答
1

使用.offset()试试这个:

jQuery('.quick-access').offset({ left: -100 });
于 2013-05-16T10:57:14.763 回答