如果div溢出,则使用javascript应用样式
如果容器div的内容溢出,我会尝试使用javascript设置其样式 到目前为止,我掌握的代码是:如果div溢出,则使用javascript应用样式,javascript,css,overflow,setattribute,Javascript,Css,Overflow,Setattribute,如果容器div的内容溢出,我会尝试使用javascript设置其样式 到目前为止,我掌握的代码是: <div class="container" style="position: relative; height: 390px; margin-bottom: 90px; overflow-y: auto;"> <div class="columns" style="height: auto; position: absolute;"> some
<div class="container" style="position: relative; height: 390px; margin-bottom: 90px; overflow-y: auto;">
<div class="columns" style="height: auto; position: absolute;">
some content
</div>
</div>
一些内容
我使用这个javascript函数在div溢出时动态地将“box shadow”添加到div的底部。它不起作用了
<script>
$(window).resize(function(){
$('.container').css('height', $(window).height() - 200);
var columsheight = $('.colums').height();
var containerheight = $ ('.container').height() -200;
if (containerheight < columsheight){
$('.container').css({"box-shadow" : "inset 0px -13px 8px -10px #868686"});
}
else{};
}).resize();
</script>
$(窗口)。调整大小(函数(){
$('.container').css('height',$(window.height()-200);
var columsheight=$('.colums').height();
var containerheight=$('.container').height()-200;
if(集装箱高度<立柱高度){
$('.container').css({“框阴影”:“inset 0px-13px 8px-10px#868686”);
}
else{};
}).resize();
我需要一些帮助来正确设置它。您看到脚本中的打字错误了吗
var columsheight = $('.colums').height();
根据您的标记,应该是:
var columsheight = $('.columns').height();
哦。哎哟更重要的是。。。您的整个jQ窗口调整功能状态不好。resize()函数在完成其余处理之前关闭:
$(window).resize(function(){
$('.container').css('height', $(window).height() - 200);
var columsheight = $('.columns').height();
var containerheight = $('.container').height();
if (containerheight < columsheight){
$('.container').css("box-shadow","inset 0px -13px 8px -10px #868686");
};
}).resize();
你可以在实践中看到这一点
观察output div并在output窗口周围拖动框架条以观察值的变化。您看到脚本中的打字错误了吗
var columsheight = $('.colums').height();
根据您的标记,应该是:
var columsheight = $('.columns').height();
哦。哎哟更重要的是。。。您的整个jQ窗口调整功能状态不好。resize()函数在完成其余处理之前关闭:
$(window).resize(function(){
$('.container').css('height', $(window).height() - 200);
var columsheight = $('.columns').height();
var containerheight = $('.container').height();
if (containerheight < columsheight){
$('.container').css("box-shadow","inset 0px -13px 8px -10px #868686");
};
}).resize();
你可以在实践中看到这一点
观察output div并在output窗口周围拖动框架条以观察值的变化。
应为ccolumsheight
。甚至更好的是,columsheight
应该是columnsheight
columnsheight
应该是class:“container”
class=“container”
应该是$('.columns')
$('.columns')
应为ccolumsheight
。甚至更好的是,columsheight
应该是columnsheight
columnsheight
应该是class:“container”
class=“container”
应该是$('.columns')
$('.columns')
你要小心打字错误和控制台错误 我已经更正了代码,现在有了:$(document).ready(函数resizeContainers(){$('.container').css($(height',$(window.height()-200);var el=document.getElementById('.container');if(el.clientHeight
getElementById()
,并且您试图以jQuery样式向它传递一个类名,因此它无论如何都不起作用。从我给你的开始,看看是否有效。如果没有,开始在代码中放入console.log()调用,并在调整窗口大小时观察浏览器中的Javascript控制台,以查看resize.Uau!!这正是我需要的!不知道为什么我的页面中没有工作。试着找出答案。啊!!当我将窗口调整到较小的高度时,阴影刚好出现。您的.columns div中是否有足够的内容超过.container div的高度?如果没有,你将不会看到任何事情发生。我在文本中添加了内容,以便您可以看到如果有内容,它会做什么。在这一点上,我不知道我能提供进一步的帮助,除非你能在JS控制台中看到某种错误。祝你好运如前所述,它看起来像是在做我期望的事情,在Firefox中。。。它正在添加底部内框阴影。你在测试什么web浏览器?我已经更正了代码,现在有了:$(document).ready(function resizeContainers(){$('.container').css('height',$(window.height()-200);var el=document.getElementById('.container');if(el.clientHeightgetElementById()
,而您正试图以jQuery样式向其传递类名,因此它无论如何都不起作用。从我给您的开始,看看是否起作用。如果不起作用,请开始放置console.log()调用代码,并在调整窗口大小时观察浏览器中的Javascript控制台,以查看在调整窗口大小期间触发的值。Uau!!这正是我需要的!不知道为什么我的页面中不起作用。正在尝试找出。啊!当我将窗口调整到较小的高度时,阴影刚好出现。你的.colu中有足够的内容吗mns div超过了.container div的高度?如果没有,你就不会看到任何事情发生。我添加了文本,这样你就可以看到它在有内容的情况下会做什么。在这一点上,我不知道我能提供进一步的帮助,除非你能在JS控制台中看到某种错误。祝你好运!正如我写的,它看起来像是在做什么我没料到,在Firefox中,它会在底部的内部框中添加阴影。你在测试什么web浏览器?