jQuery中的border-bottom-width

时间:2010-11-18 09:24:33

标签: jquery

我正在尝试使用jQuery设置边框的宽度,因此它将调整为屏幕大小。

我现在正在使用的是:

$("#content").css("border-bottom-width", "(1/20)*theHeight", "border-right-width", "(1/10)*theWidth", "border-left-width", "(1/10)*theWidth", "border-top-width", "0");

但这似乎并没有成功。我知道值高度和宽度都被填充,所以这不是问题所在。

我做错了什么?如果这是一个非常蹩脚的错误,那么我真的很抱歉成为这样一个菜鸟。

3 个答案:

答案 0 :(得分:4)

应该是这样的:

$("#content").css({"border-bottom-width": (1/20)*theHeight, "border-right-width": (1/10)*theWidth, "border-left-width": (1/10)*theWidth, "border-top-width": 0});

问题是你首先使用css()错误。如果您有多个css属性,那么您需要将它设为objet {key:value,key:value}。其次,如果将变量和计算放在引号中,结果将只是纯文本。

答案 1 :(得分:2)

这是因为你的引号和格式错误,只需删除引号并使你的参数成为一个对象,如下所示:

$("#content").css({"border-bottom-width": (1/20)*theHeight,
                   "border-right-width": (1/10)*theWidth, 
                   "border-left-width": (1/10)*theWidth, 
                   "border-top-width": 0});

object literal的格式始终为{ key: value, key2: value2 }。为安全起见,请引用您的密钥,因为border-bottom-width不是有效密钥(因为-),但"border-bottom-width"就好了。你也可以简化它,比如:

$("#content").css({"border-bottom-width": theHeight/20,
                   "border-right-width": theWidth/10, 
                   "border-left-width": theWidth/10, 
                   "border-top-width": 0});

答案 2 :(得分:0)

"(1/20)*theHeight"

不是这样的:

((1/20)*theHeight)

所以这样做:

.css({"border-bottom-width": (1/20)*theHeight,
                   "border-right-width": (1/10)*theWidth, 
                   "border-left-width": (1/10)*theWidth, 
                   "border-top-width": 0});