【问题标题】:better way to jQuery set outerWidth(true) - widthjQuery 设置 outerWidth(true) - 宽度的更好方法
【发布时间】:2011-10-21 23:28:38
【问题描述】:

简而言之,有没有办法设置outerWidth?

$.outerWidth(true, newValue)

更新: 我发现了一些可以做到这一点的插件, 虽然我需要一个函数定义而不是 3 个插件来做到这一点。

【问题讨论】:

    标签: javascript jquery css width


    【解决方案1】:

    你已经很接近了。使用 jQuery 1.8+,只需使用:

    .outerWidth(newValue, true);
    

    也适用于:

    它实际上成为了 jQuery 1.8 的 setter。那是您发布问题后的一年。而且,它被列在changelog,但没有人updated the documentation,这说明它可能被很多人遗漏了。

    如果您有 jQuery 1.7.2 或更早版本,请参阅 Xeo's answer(在此页面上)或使用 jquery-ui 1.8.4+,它会自动将这些方法增强为 getter/setter(因为在 jQuery 1.8 中,这些方法实际上是ported 来自 jquery-ui)。

    【讨论】:

      【解决方案2】:

      这就是你要找的吗?

      var a = $('element');
          actualWidth = a.outerWidth(true),
          desiredWidth = 1000,
          difference = desiredWidth - actualWidth,
      
      a.css('width',difference);
      

      【讨论】:

        【解决方案3】:

        如果要设置元素的宽度,可以使用这些示例

        var a = $("#element");
        
        a.width(10);
        a.css("width", "10px");
        

        【讨论】:

        • 或者花哨的裤子.. a.animate({ width : "10px" });
        • 您的答案是错误的,因为它没有考虑填充、边框和边距(这就是 outertrue 中的问题的意思)。对不起。
        猜你喜欢
        • 2012-03-03
        • 2017-03-03
        • 2013-12-09
        • 2012-08-18
        • 2017-04-22
        • 2011-04-22
        • 1970-01-01
        • 1970-01-01
        • 2012-04-05
        相关资源
        最近更新 更多