在Javascript中强制重新加载/调整大小

typ*_*ror 1 javascript css jquery dom webkit

我的应用程序中有一个侧边栏,可以通过切换按钮隐藏/显示.它只是在"body"上切换一个类,为内容区域添加一些边距并隐藏/显示侧边栏.麻烦的是,内容区域在切换时不会调整其子内容的大小.一旦我调整了浏览器的大小,内容区域就会调整以适应内容,但我需要它在切换后执行此操作而无需调整窗口大小.有没有办法触发元素大小刷新或dom刷新来解决这个问题?使用Chrome 19.x.

 $('#sidebar-toggle').click(function(event) {
   event.preventDefault();
   $('body').toggleClass('with-sidebar-left');
 });
Run Code Online (Sandbox Code Playgroud)

编辑:似乎它可能是一个Webkit问题.在Firefox中正常工作.

编辑2:在以下位置设置简化的构建:

https://dl.dropbox.com/u/189605/misc/build-test/grid.html

您可以看到这些框是浮动的:左侧,当您使用小箭头按钮最小化侧边栏时,它应该调整右侧以使更多的框适合.在Webkit中,您必须调整浏览器的大小才能实现它的更多空间.适用于Firefox.

bil*_*ted 5

您可以在点击处理程序中触发调整大小,例如:

$(window).trigger('resize')
Run Code Online (Sandbox Code Playgroud)