- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我连续放置了 16 个图标。但是当我减小窗口大小时,溢出的图标会折叠到下一行。
现在是这样的。[
这就是我想要的样子。[
应该 overflow hidden 的图标并显示一个查看所有按钮。单击按钮时,会弹出一个模式框。
我不知道从哪里开始。对于给定的窗口大小,有没有办法在 jQuery 中获取 div 的溢出子标记。
一些提示或想法将不胜感激。谢谢。
最佳答案
鉴于我们可以使用 jQuery:
我们需要计算一些东西,我们在页面加载和调整大小事件时执行初始函数。
首先,我们检查容器的宽度和元素的数量,我将每个元素占用的像素数量 (70) 乘以元素的总数来计算它们将占用的空间。如果元素太多(container <= items)
,我们取消隐藏查看更多,并隐藏所有元素。然后我们计算还剩多少空间(parseInt()
)减1,查看更多item)
之后,我们使用 .each()
函数取消隐藏所有适合的元素,我们停在我们在 space
中计算的索引处多变的。 else 语句取消所有隐藏,这意味着有足够的空间容纳所有元素。
function checkOverflow() {
var containerWidth = $('.container').width()
var itemLength = 70 * $('.item').length
if(containerWidth <= itemLength) {
$('.view-more').removeClass('hidden');
$('.item').addClass('hidden');
var space = parseInt(containerWidth / 70) - 1;
$('.item').each(function(i, el) {
if(i < space) {
$(el).removeClass('hidden');
}
})
}
else {
$('.view-more').addClass('hidden');
$('.item').removeClass('hidden');
}
}
checkOverflow();
$('.popup').hide().click(function() {
$('.popup').hide();
})
$('.view-more').click(function() {
$('.popup').show();
})
$(window).resize(function() {
checkOverflow()
})
.container {
display: inline-block;
background-color: #0FF;
width: 100%;
}
.popup {
position: absolute;
background-color: #00F;
top: 20%;
left: 5%;
right: 5%;
width: 90%;
margin: auto;
height: auto;
}
.item, .popup-item {
float: left;
width: 50px;
height: 50px;
background-color: #F00;
margin: 10px;
}
.view-more {
float: left;
width: 50px;
height: 50px;
background-color: #F00;
margin: 10px;
}
.hidden {
display: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="view-more hidden">view more!</div>
</div>
<div class="popup">
<div class="popup-item"></div>
<div class="popup-item"></div>
<div class="popup-item"></div>
<div class="popup-item"></div>
<div class="popup-item"></div>
<div class="popup-item"></div>
<div class="popup-item"></div>
<div class="popup-item"></div>
<div class="popup-item"></div>
</div>
关于javascript - 随着窗口大小的减小,如何使用 jQuery 在查看更多按钮下 overflow hidden 的子元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41144186/
我正在使用 bootstraptable 并试图让单元格显示溢出的内容但只显示向下(即 overflow-y)。问题是,bootstraptable css 使用 overflow: hidden o
来自文档:溢出: The overflow shorthand CSS property sets what to do when an element's content is too big to
有多个这样命名的问题,但我没有找到一个适用于我的情况,所以我在这里: 在这段代码中: #container:hover { overflow-x: hidden; } #container {
我正在学习 Haskell,但遇到了我没想到的异常“堆栈溢出”。 代码相当简单: type Reals = Double prod :: Reals -> Reals -> Reals prod a
我通读了this question并且没有看到我的问题是否有解决方案。 我创建了一个 CodePen这表明了这个问题。我希望隐藏红色边框左侧和右侧 (overflow-x) 的所有内容,但保持顶部和底
我有一张 bootstrap 4 卡,我想在其中隐藏字幕的溢出(并显示“...”)。我怎样才能实现这个目标?如果可能的话使用纯引导代码... Test object Added by
我今天更新了我的 flutter ,现在堆栈小部件中的溢出参数不再有效。 Flutter 1.22.0-10.0.pre.252 • channel master • https://github.c
使用 border-radius Opera 实际上不会隐藏元素的溢出部分。我已经尝试应用我设法在类似线程中找到的东西,例如定义边框样式或注意使用绝对和相对参数进行定位。但它仍然无法正常工作。 htm
我在固定大小的 div 中有一个表。如果表格溢出 div,我希望滚动条出现。我还想在向下滚动时克隆表格的标题,以便标题持久存在。我遇到的问题是我希望水平滚动条滚动克隆的标题和原始表格,而垂直滚动条
奇怪,我以为 overflow-x 和 overflow-y 都被广泛支持,但后来我才看到它只支持 CSS3( http://reference.sitepoint.com/css/overflow
unsigned long long terms; unsigned long long test; unsigned long long digit = 1; unsigned long long
我有一个案例,我必须使用 overflow-x:scroll; 水平显示内容。 现在在这个Fiddle第一个 block 有 overflow-y:scroll; 提供滚动,用户可以滚动内容。在第二个
您好,我正在尝试只使用 overflow-x 而不是 overflow-y 结构是这样的 Head1 feild1
我有一个正在运行的计划作业,我想计算过去 30 天的时间。为此,我收到一条警告,表示在表达式中检测到数字溢出。我怎样才能安全地给予 30 天? @Override @Scheduled(cro
我有一个父级,它有多个子级,当父级宽度溢出时,我喜欢显示水平滚动条。 我不想使用“display:inline-block”属性,因为它们之间会产生空白。 这是我的尝试: .parent{ wid
我正在为导航栏编写一些 CSS,我需要为下拉菜单使用 max-height 和 overflow-y: scroll 以便确保它适合页面。但是,每当我将 overflow-y 属性设置为滚动时,它似乎
这是我的问题。我有一个旋转木马,它也像菜单一样。当选项卡的数量高于浏览器可用的宽度空间时,将出现轮播控件。一切正常。但我还在每个选项卡上添加了一个下拉菜单,这就是问题所在。如果我设置 overflow
这个问题在这里已经有了答案: CSS overflow-x: visible; and overflow-y: hidden; causing scrollbar issue (10 个答案) 关
这个问题在这里已经有了答案: How do you keep parents of floated elements from collapsing? [duplicate] (15 个答案) W
这是一个代码片段: div.one { width: 98%; border: 5px solid black; overflow-x: visible; overflow-y: hi
我是一名优秀的程序员,十分优秀!