CSS свойство overflow позволяет управлять реакцией контейнера (например, DIV) при его переполнении. В некоторых случаях бывает необходимо определить факт переполнения, чтобы выполнить какие то действия.
Переполнение контейнера наступает, когда его размеры фиксированы. Т.е. мы имеем CSS вида:
|
div#test-container { height: 100px; overflow: hidden; } |
Как определить, что содержание контейнера выходит за его пределы, в данном примере имеет высоту более 100 точек?
|
//найдем объект var obj = document.getElementById('test-container'); //и вот оно решение: if (obj.scrollHeight > obj.clientHeight) { alert ('Контейнер переполнен'); } |
Аналогично можно проверить переполнение контейнера по ширине.
|
if (obj.scrollWidth > obj.clientWidth) .... |
А ещё лучше оформить эти проверки в виде функций:
|
function ifOverflowedX(obj) { return obj.scrollWidth > obj.clientWidth; } function ifOverflowedY(obj) { return obj.scrollHeight > obj.clientHeight; } |
Данная запись опубликована в 22.03.2016 22:43 и размещена в рубрике Программирование.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Сентябрь 21, 2021 г.
По какой то причине firefox не верно отрабатывает свойство background-size: cover для SVG.
Чтобы воспроизвести попробуйте задать стили вроде:
[crayon-6895b967a9319639059069/]
Чтобы исправить ситуацию, вы можете заменить размер фона на следующий: ...
Читать
Май 5, 2017 г.
После выполнения загрузки данных по ajax, может потребоваться инициализация скриптов для только что полученного куска HTML.
Как данный механизм реализован в Drupal 7?
По большому счету, требуется добавить js код в секцию success после вызова ...
Читать
Январь 4, 2019 г.
Конструирование запросов через Drupal DB API необходимо для поддержки совместимости кода для разных источников данных.
Друпал предоставляет и более прямые средства для написания запросов вроде db_query, и никто не может запретить вам применить функционал ...
Читать
Июль 6, 2023 г.
У нас есть контроллер, который выдаёт json ответ. Добавим кеширование.
Начнем с определения контроллера. Пусть сконфигурирован следующий mymodule.routing.yml:
[crayon-6895b967a9971386348335/]
Это значит, что у нас создан класс PublicApi в ...
Читать