如果我想获得.css()
,margin
的css值,则jQuery padding
不起作用。
我找到了一个解决这个bug的jquery代码。
请通过添加以下代码帮助我扩展jquery .css()
:
$.each(['border', 'margin', 'padding'], function (i, name) {
$.fn[name] = function (value) {
if (value) {
if (value.top !== undefined) {
this.css(name + '-top' + (name === 'border' ? '-width' : ''), value.top);
}
if (value.bottom !== undefined) {
this.css(name + '-bottom' + (name === 'border' ? '-width' : ''), value.bottom);
}
if (value.left !== undefined) {
this.css(name + '-left' + (name === 'border' ? '-width' : ''), value.left);
}
if (value.right !== undefined) {
this.css(name + '-right' + (name === 'border' ? '-width' : ''), value.right);
}
return this;
}
else {
return {top: num(this.css(name + '-top' + (name === 'border' ? '-width' : ''))),
bottom: num(this.css(name + '-bottom' + (name === 'border' ? '-width' : ''))),
left: num(this.css(name + '-left' + (name === 'border' ? '-width' : ''))),
right: num(this.css(name + '-right' + (name === 'border' ? '-width' : '')))};
}
};
});
Hre是表示jquery .css()
在firefox浏览器中无法获得填充和边距值的小提琴
答案 0 :(得分:1)
我有一个解决方案,请看一下。
$(document).ready(function(){
....
$('[name='+this.name+']').val(marginT);
.....
}else{
this.value = $('h3').css(this.name);
}
});
});
以上代码是我自己的逻辑, 我还实现了您提供的代码。
此插件也有问题,请检查显示的console.log。