Это получит начальную начальную высоту, с которой, как вы сказали, вам необходимо перейти:
HTML:
<div class="order-body" style="height: 200px;">
<div class="product-details">
<div class=“price”>
$9.99
</div>
</div>
</div>
<div class="order-body" style="height: 100px;">
<div class="product-details">
<div class=“price” id = “foo”>
$5.99
</div>
</div>
</div>
<div class="order-body" style="height: 50px;">
<div class="product-details">
<div class=“price”>
$10.99
</div>
</div>
</div>
<script defer src="test.js"></script>
JavaScript:
// order-body array
const h = document.querySelectorAll(".order-body");
for (let i = 0; i < h.length; i++) {
// https://developer.mozilla.org/en-US/docs/Web/API/Element/clientHeight
// includes padding
console.log(h[i].clientHeight);
// >> 200
// >> 100
// >> 50
// https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetHeight
// includes padding, scrollBar, borders
// console.log(h[i].offsetHeight);
}
Это зависит от Ваших требований, но на основе моего опыта вот случаи, когда необходимо использовать базу данных вместо списков:
1) Когда у Вас есть many-many отношения в Вашей модели базы данных
2) Когда у Вас есть два или больше соединенные объекта (например, Клиент> Счет> продукт Счета).
SharePoint является большим, но в вышеупомянутых сценариях у Вас будут проблемы с SharePoint ограничениями UI.
3) Если Вы планируете иметь какие-либо пользовательские отчеты или диаграммы, необходимо придерживаться собственной базы данных.
При использовании объектов базы данных, лучший подход должен разработать собственные веб-части, так как BDC является дорогим и очень ограниченным для большинства случаев. Можно также проверить сторонние веб-части (например, Бамбуковые веб-Части)
Вот причины использовать списки SharePoint по базе данных:
Если у Вас есть сложные запросы, я предполагаю, что Вы помещаете их в отдельную базу данных. Списки хороши, когда модель данных часто не выращивает это.
Расширение суммы полей в столбцах списка включает обновление ContentTypes непосредственно с STSADM, который необходимо будет кодировать. Однако запросы данных непосредственно из базы данных (с некоторым кэшем, конечно) приведут к более быстрой разработке, не имея необходимость обновлять весь ContentTypes, связанный с каждым списки, связанные с ним.
Конечно, при активации Кэширования данные queryied от базы данных будут кэшироваться на уровне на выходе страницы.
В дополнение к ответу Maxim's я также советовал бы принять поиск во внимание. Поиск OTB действительно хорош, если эти данные будут чем-то, во что необходимо будет вырыть.
Я не был бы слишком взволнован по поводу движения к пользовательской базе данных для данных.
Это действительно означает, что существует дополнительная работа, чтобы очистить его с пользовательскими элементами управления и представить те средства управления странице расположения и/или пользовательскому webparts, который списки делают для Вас.
Если бы Вы имеете в наличии BDC, который был бы способом пойти, в других отношениях пользовательский.
Таким образом в конце это - компромисс между простотой интеграции с sharepoint и имением в наличии форм ввода данных по сравнению с кодированием всех тех объектов, но иметь полный контроль над целостностью данных.