将 .height 放入数组中?
我有一个带有以下 HTML 的 jQuery 轮播:
<ul>
<li>
<img src="afbeelding.png" alt="afbeelding" />
<div class="tekst">
<p>Tewefjwoejgi wjgiowje iogjwioej goiwejgioj woegjio</p>
</div>
</li>
<li>
<img src="afbeelding.png" alt="afbeelding" />
<div class="tekst">
<p>Tewefjwoejgi wjgiowje iogjwewdg iowejgio jwoiegj oiwjoegioej goiwejgioj woegjio</p>
</div>
</li>
</ul>
但是网站的用户可以在 div
类 tekst
中设置文本。现在我有 li
项目,在 div
类文本中有 2 个单词。而且在 div.text
中还有包含大量文本的 li
项目。
div
类文本具有背景颜色。我想让每个 div
具有相同的高度。
如何使用 Javascript 或 jquery 实现此目的?也就是说,div
类tekst
的高度是最大的div
类tekst
的高度?
I have a jQuery carousel with this HTML:
<ul>
<li>
<img src="afbeelding.png" alt="afbeelding" />
<div class="tekst">
<p>Tewefjwoejgi wjgiowje iogjwioej goiwejgioj woegjio</p>
</div>
</li>
<li>
<img src="afbeelding.png" alt="afbeelding" />
<div class="tekst">
<p>Tewefjwoejgi wjgiowje iogjwewdg iowejgio jwoiegj oiwjoegioej goiwejgioj woegjio</p>
</div>
</li>
</ul>
But the user of the website can set text in the div
class tekst
. Now i have li
items with 2 words in the div
class text. But also li
items with a lot of text in the div.text
.
The div
class text has a background color. I want make every div
the same height.
How can I achieve this with Javascript or jquery? That is, the div
class tekst
has the height of the biggest div
class tekst
?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
从jQuery“插件创作”页面,有一个方便的插件:
它需要一组元素并返回最高的高度。像这样使用它:
From the jQuery 'Plugin Authoring' page, there's this handy plugin:
Which takes a set of elements and returns the height of the tallest. Use it like this:
您需要抓取页面上的所有
$('.tekst')
元素,并使用var myHeight = $('.tekst').height() 找到最大高度;
然后,您可以使用
$('.tekst').height(myHeight);
设置高度。完成上述计算后,您仍然可以使用轮播。
为了迭代页面上的 tekst 元素,您可以使用 .each();
参考: http://api.jquery.com/each/
希望有所帮助。
You will need to grab all the
$('.tekst')
elements on the page, and find the largest height, usingvar myHeight = $('.tekst').height();
You can then set the height using
$('.tekst').height(myHeight);
Then you can still use carousel once you have done the above calculations.
In order to iterate through the tekst elements on the page, you can use .each();
Reference: http://api.jquery.com/each/
Hope that helps.
不完全清楚你想要实现什么,但猜测,为什么不使用 CSS?
除非您现有的脚本在运行时操纵样式,否则这就足够了。
Not entirely clear on what you're trying to achieve but in guessing, why not use CSS?
Unless your existing scripts manipulate styles at runtime, this could well suffice.
你确实不会使用 javascript 设置高度,而是使用 CSS。您可以创建定义它的类并将其应用为类似的东西。
或者您可以应用归因的样式。
You really wouldn't set the height with javascript, but with CSS. You can create class that defines that and apply it with something like.
or you could apply the style attributed.
使用普通 CSS,很难创建具有相同高度的元素,除非您可以使用表格或
display: table-cell
。其他选项:
指定固定高度和
overflow:hidden
以确保较大的 div 不会泄漏。向 div 添加 onmouseover 事件,然后显示完整版本。只需为所有 DIV 指定一个大高度
并排渲染所有 DIV,然后使用 JavaScript 将容器的高度指定给所有 DIV(容器将 。
With plain CSS, it's hard to create elements with the same height unless you can use a table or
display: table-cell
.Other options:
Assign a fixed height and
overflow: hidden
to make sure the bigger divs don't leak. Add a onmouseover event to the divs and show the full version then.Just assign a big height to all DIVs
Render all DIVs side by side and then assign the height of the container to all of them with JavaScript (the container will get the height of the tallest child).