Мне интересно, как я могу получить доступ к переполняющим элементам. Я хотел бы скопировать их содержимое в другой div или что-то еще. Допустим, у меня есть ul с 5 li элементами, но видны только два. Итак ... Как я могу получить другие 3 элемента в другом div?Переполнение скрытых элементов
3
A
ответ
4
Вы должны вычислить, если что-то видно или нет, и для этого вам необходимо сделать предположения. Ниже приведен простой пример этого. Он предполагает, что список является традиционным списком (в котором каждый элемент находится ниже следующего). Затем он использует расчет, чтобы определить, больше ли высота offsetTop
, чем высота контейнера. Вы можете настроить это, чтобы увидеть, что-то частично видно или полностью видно.
return this.offsetTop + $(this).height() > height;
способ применения эффекта, если предмет не полностью виден. Для того, чтобы не перемещать предметы, которые частично видны изменения его:
return this.offsetTop > height;
Полный пример:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
var height = $("#container").height();
$("#container li").filter(function() {
return this.offsetTop + $(this).height() > height;
}).wrapAll("<ul>").parent().appendTo("#overflow");
});
</script>
<style type="text/css">
div, ul, li { border: 0 none; padding: 0; margin: 0; }
#container { background: yellow; margin-bottom: 20px; height: 50px; overflow: hidden; }
#overflow { background: #CCC; }
</style>
</head>
<body>
<div id="container">
<ul>
<li>one</li>
<li>two</li>
<li>three</li>
<li>four</li>
<li>five</li>
</div>
<div id="overflow">
</div>
</body>
</html>
Более общее решение было бы гораздо более утомительным. Вам нужно будет обслуживать предметы, которые находятся слева, справа, выше или ниже «окна просмотра».
Смежные вопросы
- 1. переполнение: проблема с выравниванием скрытых элементов
- 2. Переполнение CSS скрытых и плавающих элементов
- 3. Переполнение скрытых разрывов макета
- 4. Переполнение скрытых изменений содержимого содержимого
- 5. jQuery: Скрытие скрытых элементов
- 6. Угловое игнорирование скрытых элементов
- 7. возобладать на скрытых элементов
- 8. Как вы предотвращаете отображение скрытых (переполненных) элементов?
- 9. ли переполнение скрытых привести к ускорению рендеринга на прокрутке регионов
- 10. Не загружать изображения скрытых элементов
- 11. проверка скрытых элементов zend form
- 12. Переполнение только определенных элементов
- 13. Предоставление пограничного коллапса для сглаживания влияет на переполнение скрытых
- 14. Элементы скрытых элементов Carofredsel и jQuery UI скрыты
- 15. Переполнение текстовых элементов Flex-box
- 16. Переполнение скрытых работ в FF, но не IE
- 17. Ссылки на фиксированном элементе не работает, когда переполнение скрытых
- 18. начальной загрузки строк больше столбцов и переполнение скрытых
- 19. Проблемы с FireFox и JQuery - переполнение скрытых/автоматических свойств
- 20. JQuery селектор для скрытых элементов, кроме
- 21. Инициализация времени загрузки для скрытых элементов управления
- 22. Позиционирование и отображение скрытых элементов с jquery
- 23. Выбор nth-child пропущенных скрытых элементов
- 24. Скремблирование скрытых элементов с помощью BeautifulSoup
- 25. Как не нависать на видимость скрытых элементов?
- 26. Изменение материала скрытых элементов Autodesk Forge viewer
- 27. Функция изменения jQuery для скрытых дочерних элементов
- 28. JMeter: Как получить значения скрытых элементов
- 29. JQuery .each() для переключения скрытых элементов
- 30. jQuery 1.10 теперь вычисляет ширину скрытых элементов?