Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Возможно ли использовать конструктор new ResizeSensor более чем с одним элементом? (https://javascript.ru/forum/jquery/78732-vozmozhno-li-ispolzovat-konstruktor-new-resizesensor-bolee-chem-s-odnim-ehlementom.html)

ozoro 27.10.2019 03:06

Возможно ли использовать конструктор new ResizeSensor более чем с одним элементом?
 
Есть два блока, необходимо их сравнивать и в зависимости от ширины и высоты совершать определенные манипуляции.

Нашел такую библиотеку JS, в том числе поддерживающую Jquery (хотя на Jquery иногда и неверно вычисляющую размеры). но на JS вычисляет всегда правильно.

Собственно вопрос. Возможно ли изменить следующую функцию (конструктор) чтобы работать в ней сразу с двумя (как минимум) или более селекторами?

Вот так работает только с одним.
var element1 = document.querySelector(".div-resize1");
var element2 = document.querySelector(".div-resize2");

new ResizeSensor(element1, function(size){
	console.log('Ширина: ' + size.width + 'px');
    console.log('Высота: ' + size.height + 'px');
	console.log('размер содержимого изменен');
});


Заранее, благодарю!

ozoro 27.10.2019 18:44

Если передать массивом:
var element1 = document.querySelector(".div-resize1");
var element2 = document.querySelector(".div-resize2");

let h12 = [element1, element2];

new ResizeSensor(h12, function(size){
    //console.log('Ширина: ' + size.width + 'px');
    //console.log('Высота: ' + size.height + 'px');

// вывести, например, значение высоты
console.log(size.height); // выводится заничение и element1 и element2 одновременно


    console.log('размер содержимого изменен');
});


Как разделить значения element1 и element2?

рони 27.10.2019 18:45

ozoro,
:-?

ozoro 27.10.2019 22:23

Цитата:

Сообщение от рони (Сообщение 514646)
ozoro,
:-?

Это недоумение?

сделал так:
var element1 = document.querySelector(".div-resize1");
var element2 = document.querySelector(".div-resize2");

let h12 = [element1, element2];

new ResizeSensor(h12, function(size){

console.log(size);

});



в консоль выводится:
{width: 673, height: 2362}
{width: 673, height: 1252}

это получается массив с объектами?
Как это вывести по отдельности, напимер высоту 1 и 2 элемента по отдельности?

рони 28.10.2019 08:12

ozoro,
может сформулировать основную задачу?


Часовой пояс GMT +3, время: 06:34.