【问题标题】:Can I use Jquery to find an element and set it's CSS width to current-width - x?我可以使用 Jquery 查找元素并将其 CSS 宽度设置为 current-width - x 吗?
【发布时间】:2012-10-16 11:23:10
【问题描述】:

假设我需要将一些元素的宽度修正 19 像素。

是否可以 find 元素并设置找到的元素 CSS-width 像这样:

 $el.find( '.ui-content' )
    .css({'width': "parseFloat(found_element_current_width) -19" })

如果没有,最好的方法是什么?

【问题讨论】:

    标签: javascript jquery css dimensions


    【解决方案1】:

    是的。

    $el.find( '.ui-content' )
        .width(function(i, width) { return width - 19;  })
    

    【讨论】:

    • 115k 除了知道很多东西外,还必须意味着快速打字...... :-)
    • @frequent 更多快速输入:)
    【解决方案2】:

    来自.css()函数的文档:

    从 jQuery 1.6 开始,.css() 接受类似于 .animate() 的相对值。相对值是以+=-= 开头的字符串,用于增加或减少当前值。例如,如果一个元素的 padding-left 为 10px,.css( "padding-left", "+=15" ) 将导致总 padding-left 为 25px。

    所以你可以这样做:

    $el.find( '.ui-content' )
    .css('width', '-=19');
    

    【讨论】:

    • 嘿。也不知道。也很不错。这实际上可能是最好的方法
    • 好的。这样做,因为我认为它最适合我的需要。谢谢大家!
    【解决方案3】:

    你可以使用css的函数:

    $el.find( '.ui-content' )
        .css('width', function(i, w){
             return (parseFloat(w) - 19) + 'px'
        })
    

    【讨论】:

    • @ShivaKomuravelly iindex 的选定元素,jQuery 在内部迭代选定的元素。
    【解决方案4】:

    是的,你可以。

    $el.find( '.ui-content' )
        .css('width', parseInt(yourwidth) - 19)
    

    【讨论】:

    • yourwidth 是一个匿名变量,可以传递一些值。
    猜你喜欢
    • 1970-01-01
    • 2015-01-04
    • 2023-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-27
    • 2012-03-03
    • 2016-03-17
    相关资源
    最近更新 更多