firefox对type="file" 的input的width定义目前是不支持的,但是FF支持size属性,可以给size设置一个值,来控制上传框的大小。
但是这个size值怎么设置,size="10"是多宽,默认值又是多少,不能光凭感觉去设置。 用脚本来查看下:
< script type = " text/javascript " >
$( function () {
var fileArray = [];
var i = 0 ;
while (i < 100 ) {
fileArray.push(i + " :<input type='file' size=' " + i + " ' /><br /> " );
i ++ ;
}
document.write(fileArray.join( "" ));
$( " input:file " ).each( function () { $( this ).after( " <b> " + $( this ).width() + " </b> " ) });
});
< / script>
发现了一定的规律,默认为208像素,size="1"时为85像素,每个size之间相差6.5个像素的宽度,所以我们可以动态的设定size的值,如:
if
($.browser.mozilla) { $(
this
).attr(
"
size
"
,
1
+
(options.WrapWidth
-
85
)
/
6.5
) }
感谢你留言,转载请声明出处(http://www.cnblogs.com/flowerszhong);