我有以下脚本来获取浏览器的高度,然后页眉和页脚的高度从浏览器的高度减去:
var a = $(window).height();
alert (a);
var b = $('#header').css('height').replace(/[^-\d\.]/g, '');
alert (b);
var c = $('#header').css('height').replace(/[^-\d\.]/g, '');
alert (c);
var d = (a-(b+c));
alert (d);
$('#block').height(d);
警告,
1)699
2.)100
3.)50
那么错误的部分:
4) - 。9351
这里有什么问题?
答案 0 :(得分:4)
vars b和c包含字符串,当你在Javascript中使用字符串上的+运算符时它们被连接起来。
即。表达“100”+“50”评估为“10050”。
我建议使用jQuery .height()
方法
答案 1 :(得分:2)
使用parseInt:
var a = parseInt($(window).height());
alert (a);
var b = parseInt($('#header').css('height').replace(/[^-\d\.]/g, ''));
alert (b);
var c = parseInt($('#header').css('height').replace(/[^-\d\.]/g, ''));
alert (c);
var d = (a-(b+c));
alert (d);
$('#block').height(d);
答案 2 :(得分:1)
您可以在代码b中使用jquery height(返回整数)方法.c和c是字符串。 jsfiddle
var a = $(window).height();
alert (a);
var b = $('#header').height();
alert (b);
var c = $('#header').height();
alert (c);
var d = (a-(b+c));
alert (d);
$('#block').height(d);
答案 3 :(得分:0)
试试这个...只需更换固定数字
var a = parseInt('600');
var b = parseInt('100');
var c = parseInt('50');
var d = (a-(b+c));