【问题标题】:How to get the authored style properties of an element?如何获取元素的创作样式属性?
【发布时间】:2013-07-25 20:11:50
【问题描述】:

我正在使用 jQuery 为页面上的元素设置动画。

为了在最后重新初始化我所有元素的位置,我需要获取我的元素的创作属性,在我的样式表中以 % 指定。

我首先使用了.css() 函数,但它给了我计算值,这是我不想要的。我正在寻找我在 CSS 中声明的值(百分比或像素)。

关于如何获得它的任何想法?

【问题讨论】:

  • @CécileBoucheron:在通过 jQuery 为元素设置动画之前,您必须记录每个元素的原始 CSS 值;我已经使用数据属性记录了值,但是有很多方法可以解决。或者,如果可以,通过element.attr("style", "...") 设置值来设置动画,因为内联样式优先于类定义。然后您可以访问原始 CSS 值并使用该值通过设置样式 element.attr("style", "...") 重新初始化位置
  • 谢谢。我所有的样式都在我的样式表中,所以attr('style') 不是解决方案:/

标签: jquery css computed-style


【解决方案1】:

解决方案是使用.position() 代替.css('top').css('left'),然后将值转换为百分比。

【讨论】:

    【解决方案2】:

    @CécileBoucheron

    看看这个Fiddle,看看它是否能让你了解如何处理你的确切情况。

    这并不完美,如果您使用 % 值声明原始位置,jQuery 会返回元素的像素位置,因此如果您的设计需要响应式,它可能不够用。

    需要注意的一个有趣的事情是,如果您的元素最初是隐藏的 - display:none - 在您显示该元素之前您记录了其原始 CSS 声明的位置,您将获得以 CSS 样式声明的 %age 值。可能适用于您的情况?

    干杯!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-01
      • 2018-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-20
      • 2022-09-27
      • 2011-05-15
      相关资源
      最近更新 更多