Javascript jQuery无法获取任何div css属性?
所以我试着熟悉jQuery,所以我一直在运行一些测试代码,但是jQuery的.css似乎有一些问题?我花了3个小时尝试不同的东西。。。不行。我将div设置为包含类内容,然后运行页面并调整其大小以触发函数Javascript jQuery无法获取任何div css属性?,javascript,jquery,css,html,Javascript,Jquery,Css,Html,所以我试着熟悉jQuery,所以我一直在运行一些测试代码,但是jQuery的.css似乎有一些问题?我花了3个小时尝试不同的东西。。。不行。我将div设置为包含类内容,然后运行页面并调整其大小以触发函数 .Content { border-top-width: 1px; border-bottom-width: 1px; border-left-width: 1px; border-right-width: 1px; padding-top-width:1px; padd
.Content {
border-top-width: 1px;
border-bottom-width: 1px;
border-left-width: 1px;
border-right-width: 1px;
padding-top-width:1px;
padding: 1px;
};
<div id="wrapper" class="fullscreen">
<div id="divContainer" class="Container">
<div id="divContent" class="Content"> Content </div>
<div id="divQuery" class="Query"> Query </div>
</div>
</div>
$(window).resize(function() {
var container = $('#divContainer');
var content = $('#divContent');
console.log(content.css('border-left-width'));
console.log(content.css('padding-top-width'));
//content.width(container.width()*.6-content.attr('padding'));
});
我做错了什么?连字符的css属性在JavaScript中是camelCase 所以是borderLeftWidth和paddingLeftWidth。这是因为-在JS中用作减法符号。在非jQuery JS术语中,之所以使用
this.style.paddingLeftWidth
,是因为this.style.padding leftwidth
意味着从this.style.padding
中减去left
和width
因此,请尝试:
console.log(content.css('borderLeftWidth')代码>这里有两个问题:
padding top width
应该是padding top
边框顶部宽度
将不起作用,除非您有一个边框样式(例如“solid”)-否则假定它为“none”,即没有边框,并且您的边框宽度
声明无效
请参阅一个工作示例。这是对纯Javascript的一个很好的回答,但不是这里的问题-我认为jQuery接受这两种形式。谢谢你的立方眼,你的代码也很有效。然而,正如nrabinowitz所说,jQuery也处理了“-”,因为下面的代码也可以工作:console.log(content.css('padding-top');谢谢你,纳拉比诺维茨,刚刚试过你和Cubed Eye的建议,两种方法都有效。
0px
(an empty string)