note.js 1.2 KB

1234567891011121314151617181920212223242526272829303132
  1. "use strict";
  2. (function ($) {
  3. jQuery(document).ready(function () {
  4. function resizeGridItem(item) {
  5. var grid = document.getElementsByClassName("note-card-holder")[0];
  6. var rowHeight = parseInt(window.getComputedStyle(grid).getPropertyValue('grid-auto-rows'));
  7. var rowGap = parseInt(window.getComputedStyle(grid).getPropertyValue('grid-row-gap'));
  8. var rowSpan = Math.ceil((item.querySelector('.item').getBoundingClientRect().height + rowGap) / (rowHeight + rowGap));
  9. item.style.gridRowEnd = "span " + rowSpan;
  10. }
  11. function resizeAllGridItems() {
  12. var allItems = document.getElementsByClassName("note-card");
  13. for (var x = 0; x < allItems.length; x++) {
  14. resizeGridItem(allItems[x]);
  15. }
  16. }
  17. function resizeInstance(instance) {
  18. var item = instance.elements[0];
  19. resizeGridItem(item);
  20. }
  21. // window.onload = resizeAllGridItems();
  22. window.addEventListener("resize", resizeAllGridItems);
  23. var allItems = document.getElementsByClassName("note-card");
  24. for (var x = 0; x < allItems.length; x++) {
  25. imagesLoaded(allItems[x], resizeInstance);
  26. }
  27. });
  28. })(jQuery);