これにより、 の自然な高さが検出され、 の自然な高<div>
さが現在の高さよりも大きい場合に、[その他...] リンクが自動的に生成されます<div>
(すべてのコンテンツを表示するのに 100 ピクセルで十分な場合は表示されません)。のさまざまな高さに合わせて JavaScript を調整する必要はありません<div>
。
デモ
Javascript
var main = document.getElementById("main");
var original_height = main.offsetHeight;
main.style.height = 'auto';
var natrual_height = main.offsetHeight;
main.style.height = original_height+"px";;
var more = document.getElementById("more");
if (natrual_height > original_height) {
more.innerHTML = '<a href="javascript:void(0)" onClick="show_more()">More...</a>';
}
function show_more() {
if (main.offsetHeight < natrual_height) {
main.style.height = 'auto';
more.innerHTML = '<a href="javascript:void(0)" onClick="show_more()">Less...</a>';
} else {
main.style.height = original_height+"px";;
more.innerHTML = '<a href="javascript:void(0)" onClick="show_more()">More...</a>';
}
}
HTML
<div id="main" class="main">
<ul>
<li>Something</li>
<li>LoremLoremLoremLoremLoremLoremLorem</li>
<li>Ipsum</li>
<li>1234</li>
<li>LoremLoremLoremLoremLoremLoremLoremLoremLoremLoremLoremLoremLoremLorem</li>
<li>5678</li>
<li>111111</li>
<li>abc</li>
</ul>
</div>
<div id="more">
</div>
CSS
.main {
height: 100px;
overflow: hidden;
}