gpt4 book ai didi

javascript - ResizeObserver 在 Windows 上无法按预期工作

转载 作者:行者123 更新时间:2023-12-03 02:59:53 26 4
gpt4 key购买 nike

我正在使用ResizeObserver(实验网络平台标志背后的谷歌浏览器支持它)。我已经使用可调整大小的 jQuery UI 创建了 codepen 演示。它在 chromium linux 上运行良好,但在 Windows 上它会在一段时间后停止或只执行一次。

我的代码如下所示:

$('#node').css({
width: 140,
height: 50
}).resizable();

function resizer(node, callback) {
if (window.ResizeObserver) {
var resizer = new ResizeObserver(function(entries) {
callback(entries[0]);
});
resizer.observe(node);
return () => resizer.unobserve(node);
} else {
return () => undefined;
}
}
resizer(document.querySelector('.content'), function(entry) {
var width = entry.contentRect.width;
var height = entry.contentRect.height
console.log(width + 'x' + height);
// custom event found on
// https://ebidel.github.io/demos/dom_resize_events.html
entry.target.dispatchEvent(new CustomEvent('resize', {
detail: {width,height}
}));
});
document.querySelector('.content').addEventListener('resize', (e) => {
console.log(e.detail);
});

我尝试重新启动浏览器,关闭/打开开发人员工具并将文件下载到本地驱动器并使用文件协议(protocol)打开,得到了相同的结果。

google chrome example工作正常,

这是一个my pen

最佳答案

观察者似乎得到了垃圾收集,添加

var r;
...
function resizer(node, callback) {
...
var resizer = new ResizeObserver(...);
r = resizer;
...
}

解决了问题

关于javascript - ResizeObserver 在 Windows 上无法按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47458712/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com