我想使用this script仅显示三行文本并插入“阅读更多”按钮:
const ps = document.querySelectorAll('p');
const observer = new ResizeObserver(entries => {
for (let entry of entries) {
entry.target.classList[entry.target.scrollHeight > entry.contentRect.height ? 'add' : 'remove']('truncated');
}
});
ps.forEach(p => {
observer.observe(p);
});
不幸的是,由于使用了 ResizeObserver,类 truncated
没有插入到 Android 上的 Edge 和 Firefox 等浏览器中,因此该按钮不会显示。我向 JavaScript 专业人士提出的问题:有什么想法可以让它在 Edge 和 Firefox 中运行吗?
最佳答案
我尝试使用 MS Edge for Android 44.11.4.4121 测试上述示例代码,看起来它工作正常,并且可以正常显示按钮和功能。
Edge for Android 和 Firefox for Android 中的输出:
我还检查了文档,发现 Android 版 Firefox 不支持 ResizeObserver。这就是它不能与 Android 版 Firefox 浏览器配合使用的原因。
引用文献:
(1) ResizeObserver
(2) Resize Observer
关于javascript - ResizeObserver 不适用于 Android 版 Edge 和 Firefox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59646934/