gpt4 book ai didi

javascript - 如何检测 textContent 何时溢出其父级

转载 作者:行者123 更新时间:2023-11-29 15:15:04 25 4
gpt4 key购买 nike

需要:
当按钮的 textContent 溢出它的按钮宽度时,我需要一个触发器。

问题:
是否有任何简洁/巧妙的方法来检测 textContent 何时溢出其父项?

Codepen Example

更新:看起来这会解决我的问题。

HTML:

<div class="container">
<button>a normal button</button>
<button>tiny</button>
<button class="parent">
<div class="child">a rhhh, really wide button lskdfjlasdkfj lksjd flaksjd flaskdjf lkj</div>
</button>
</div>

CSS:

.container {
display: inline-grid;
grid-template-columns: 1fr 1fr 1fr;

grid-column-gap: 20px;
}
.parent {
overflow: hidden;
}
button {
white-space: nowrap;
}

JS:

const child = document.querySelector('.child');
console.log(child.scrollWidth, 'child');

const parent = document.querySelector('.parent');
console.log(parent.clientWidth,'parent');

正常: normal

触发器: trigger

注意:我不能依赖滚动条。 (更新有点使用滚动条)

最佳答案

受我在评论中提供给您的链接的启发,这里有一个工作片段:

$("button").each(function() {
if ($(this)[0].scrollWidth > $(this).innerWidth()) {
console.log("Overflow!");
} else {
console.log("It's ok.");
}
});
.container {
display: inline-grid;
grid-template-columns: 1fr 1fr 1fr;
grid-column-gap: 20px;
}

button {
white-space: nowrap;
/* Added for test */
width: 120px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container">
<button>a normal button</button>
<button>tiny</button>
<button>a rhhh, really wide button</button>
</div>

希望对您有所帮助!

关于javascript - 如何检测 textContent 何时溢出其父级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50119512/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com