Jquery width()和css(宽度)之间的差异

Jquery width()和css(宽度)之间的差异,jquery,Jquery,我正在使用JQuery设置带有id=“mydiv”的区域的宽度。当我使用 $(‘#mydiv’).width(300px); $(‘#mydiv’).css(‘width’,’300px’); 区域的样式不正确,但是当我使用 $(‘#mydiv’).width(300px); $(‘#mydiv’).css(‘width’,’300px’); 样式已正确渲染。中列出了.width()和.css()。为什么会有差异?可能是因为您缺少引号 $(‘#mydiv’).width("300px")

我正在使用JQuery设置带有
id=“mydiv”
的区域的宽度。当我使用

$(‘#mydiv’).width(300px);
$(‘#mydiv’).css(‘width’,’300px’);
区域的样式不正确,但是当我使用

$(‘#mydiv’).width(300px);
$(‘#mydiv’).css(‘width’,’300px’);

样式已正确渲染。中列出了.width()和.css()。为什么会有差异?

可能是因为您缺少引号

$(‘#mydiv’).width("300px");

区别在于数据类型。正如代码中所清楚的那样,使用css方法时,您需要将“px”附加到宽度值,而不需要指定宽度

当您想要读取任何元素的宽度时,css方法将返回字符串值,如“100px”,而宽度将返回整数值

alert($('#mydiv').css('width'));
此返回“100px”

这个返回100

因此,如果要执行任何类型的操作,则width函数是最佳选项。

“请注意,.width()将始终返回内容宽度,而不管CSS框大小属性的值如何。”