我有一个id ='obsah_popis'的DIV(它基本上保存了所有的页面内容),这个div根据请求动态填充(通过点击菜单按钮,photogalery按钮等),所以它的高度不是恒定的,而是变化的不同物体进出时加班(加载/加载)。
我需要监控其自定义构建(编码)卷轴的实际高度,根据该高度值重新计算其高度及其周围所需的一切。
我制作了一个MutationObserver,因为效果很好...但只适用于Firefox (46+) - 当我在Chrome(63)或Opera(50)下运行它时它不起作用一点都不。
我的观察者部分的代码看起来像这样(为了测试的目的,我只添加了alert()来启动让我知道它被触发了):
var test = new MutationObserver(function(mutations) {
alert();
//resizeSkrolerHandle();
});
test.observe(document.querySelector('#obsah_popis'), {
attributes:true,
childList:true,
characterData:true,
subtree:true
});
很奇怪BTW奇怪(至少对我而言)我在同一个地方运行的另一个MutationObserver(在我的功能不正常的地方)在所有浏览器中完美运行:
var bbb = new MutationObserver(function(mutations) {
document.getElementById("parallax_pozadie").style.top = document.getElementById("parallax_static").style.top = (document.getElementById("skroler").getBoundingClientRect().top * -1) * scrollSpeedMultiply + "px";
});
bbb.observe(document.querySelector('#skroler'), {
attributes:true,
childList:false
});
我看到的唯一区别是,这个工作的实际上是由 MANUAL INPUT (拖动我的自定义卷轴)启动的,而那个非工作的应该以编程方式启动
是否有人知道原因并可能解决此问题?