Javascript 动态更新浮动左Div的宽度

Javascript 动态更新浮动左Div的宽度,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我已经浏览了很多其他帖子,但都没有找到我想要的解决方案。许多解决方案都涉及到人们使用CSS的方法,比如固定左右两侧(这不值得浮动,也不浪费脑力),或者将单词以一定的数量向右包装(这也违背了我试图做的事情的目的) 我的问题是这样的: 我有3个分区:包装器、菜单和内容。包装器用于将背景应用于100%的页面,并创建额外的样式属性以供其他CSS继承。菜单用于我在JQuery中编码的菜单脚本,它在屏幕左侧占用400px的空间,并以100vh的速度向下下降。我可以将其更改为固定,但不会改变这个问题。无论如何

我已经浏览了很多其他帖子,但都没有找到我想要的解决方案。许多解决方案都涉及到人们使用CSS的方法,比如固定左右两侧(这不值得浮动,也不浪费脑力),或者将单词以一定的数量向右包装(这也违背了我试图做的事情的目的)

我的问题是这样的: 我有3个分区:包装器、菜单和内容。包装器用于将背景应用于100%的页面,并创建额外的样式属性以供其他CSS继承。菜单用于我在JQuery中编码的菜单脚本,它在屏幕左侧占用400px的空间,并以100vh的速度向下下降。我可以将其更改为固定,但不会改变这个问题。无论如何,内容是页面的其余部分;比如说,其他80%的内容。我的菜单和内容都在左侧浮动,效果很好。但是,直到文本在屏幕末尾换行,div才会进入(在我的例子中消失)屏幕,不再可见

我的解决方案:

function simplyWidth(changed, menu1, wrapper){
    var wrapperWidth = $(wrapper).width();
    var menuWidth = $(menu1).width();
    var newWidth = wrapperWidth - menuWidth;

    $(changed).css("width", newWidth);

};
它能工作吗?当然能工作。唯一的问题是,它根本不是动态的!它会调整一次屏幕大小,你必须刷新页面才能让它再次更新。有没有办法让JQuery/Javascript更新一次,这样我就可以每.1秒更新一次?这会使页面滞后吗?还是我做错了

另外,假设我的HTML是正确的,不需要修改。我之所以不披露它,是因为有太多的内容让我无法发布,也无法将你们这些活生生的垃圾弄糊涂

这是我的页面的基本布局:

<div id="wrapper">

<div id="menu1"></div>
<div id="content"></div>

</div>
菜单1 CSS:

#menu1 {
    margin: 0 auto;
    height: 100%;
    width: 400px;
    background-color:#191919;
    color:white;
    z-index: 400;
    float: left;

}
内容CSS:

#content {
    float:left;
    color:white;
    height: 100vh;
}

侦听resize事件,并在调整窗口大小时调用相同的函数:

$(window).resize(simplyWidth);

侦听resize事件,并在调整窗口大小时调用相同的函数:

$(window).resize(simplyWidth);

$(窗口).resize()
?:)
$(窗口).resize()
?:)谢谢你,它一出大门就不起作用了,因为我不明白为什么什么也没出现。我停下来想了一会儿,意识到这是因为脚本在实际设置内容宽度之前,正在等待浏览器改变大小。我的更新代码现在看起来是这样的:
simplyWidth('content','menu1','wrapper');$(窗口).resize(函数(){simplyWidth('content','menu1','wrapper'))谢谢你的帮助。谢谢你,它一开始就不起作用,因为我不明白为什么什么都没有出现。我停下来想了一会儿,意识到这是因为脚本在实际设置内容宽度之前,正在等待浏览器改变大小。我的更新代码现在看起来是这样的:
simplyWidth('content','menu1','wrapper');$(窗口).resize(函数(){simplyWidth('content','menu1','wrapper'))谢谢你的帮助。