javascript - jQuery 中的 CSS 属性不适用于 DOM

标签 javascript jquery html css

好的,我有一个 jQuery 交互,它是从 Google 电子表格中获取的。我创建了某些类,如果在完全相同的位置(.offset1、.offset2 等)有多个 div,则会添加这些类。

我添加了一些 css declerations,然后将这些类的 div 向左或向右移动 20 或 40 像素...

$('.position4.offset1').css({'left':'+=20px;'});
$('.position4.offset2').css({'left':'+=40px;'});    
$('.position4.offset3').css({'left':'+=60px;'});    

无论我将它们放在我的 jQuery 中的什么位置,它们似乎都不会应用于实际页面。我认为这些减速的额外特异性将消除它不添加的任何问题。

您可以在此处查看当前令人困惑的图形。向下滚动,您可能会看到一些点更亮。这是覆盖 div 的地方。他们有适当的类(class),但没有转移。

http://thetally.efinancialnews.com/tallyassets/pension-hole/index.html

希望这是有道理的。谢谢

最佳答案

如果你想实现这样的相对定位,你可以这样实现:

$('.position4.offset1').css({
     left: $('.position4.offset1').position().left + 20 + 'px'
});

回答完这个问题后,我意识到在更高版本的 jQuery 上,您编写的代码应该可以工作:

$('div').css({
    'left':'+=20px;',
    'top':'+=50px;'
});
div {
    background:red;
    height:30px;
    position:absolute;
    width:30px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div></div>

查看您的网页,您有 1.6.1 版的 jQuery。我建议要么将其更新到更新的版本,要么如果这比它值得付出更多的努力,只需使用我提到的第一种有效的方法。我已经使用控制台对其进行了测试。

关于javascript - jQuery 中的 CSS 属性不适用于 DOM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31704934/

相关文章:

javascript - 如何在javascript中生成仅变暗的随机颜色?

html - 如何在CSS网格中偏移一个div

javascript - webrtc音频设备断开与重连

javascript - 如何从 next() 获取输入值

jquery - 无法让 jQuery 调整大小来工作 : What am I doing wrong?

html - 如何在桌面上的 django 网页上显示图像?

javascript - IE6 - 没有命名空间的自定义标签

javascript - 时间和日期选择器(Javascript/PHP)

javascript - 根据耗时更新变量

javascript - 检查 bool jquery