重新調整窗口大小的DIV使用JavaScript對於大多數瀏覽器/計算機來說太重了嗎?我這樣做,因爲只是設置百分比的寬度只適用於父元素。我似乎無法使其成爲身體的一部分,而不考慮(在DOM樹上)我想要調整大小的元素和身體之間的其他父元素。使用JavaScript調整div寬度太麻煩了調整窗口大小
function resize_columns() {
var d = getWindowSize();
var body_width = d.x;
var fch_width = body_width * .15;
var pnh_width = body_width * .25;
$('.for_customer_div').css('width', fch_width + 'px');
$('.for_customer_header').css('width', fch_width + 'px');
$('.project_name_header, .project_name_div').css('width', pnh_width + 'px');
$('.line_item_div').css('width', pnh_width + 'px');
}
$(document).ready(function() {
resize_columns();
});
$(document).ready(function() {
window.onresize = function(event) {
resize_columns();
}
});
function getWindowSize() {
var w = window,
d = document,
e = d.documentElement,
g = d.getElementsByTagName('body')[0],
x = w.innerWidth || e.clientWidth || g.clientWidth,
y = w.innerHeight || e.clientHeight || g.clientHeight;
var dimensions = {
x: x,
y: y
}
是的,每一次「調整大小」事件都是非常昂貴的。最好只是調整一下調整大小的最大值,也許每四分之一大概只調整一次。這取決於你想改變多少DOM。瀏覽器在拖動鼠標時觸發許多「調整大小」事件。 – Pointy 2012-07-14 15:34:25