在研究上述问题时,我想出了一种不适用于我的情况的解决方案。
MutationObserver和Resize Observer
var observer = new MutationObserver(function (mutations) {
$parent.find('.ListSliderWrapper').removeClass('binded');
let carousel = new CarouselInit($parent.find('.ListSliderWrapper'));
});
observer.observe($parent.find('.ListSliderWrapper')[0], {
attributes: true,
attributeFilter: ['class']
});
上面提到的代码进入了无限循环。
function observeSize() {
$parent.find('.ListSliderWrapper').removeClass('binded');
let carousel = new CarouselInit($parent.find('.ListSliderWrapper'));
}
new ResizeObserver(observeSize).observe($('.ListSliderWrapper')[0])
此代码仅适用于Google Chrome。
我正在搜索一种具有跨浏览器兼容性的按类跟踪元素宽度变化的方法。