我正在动态地向我的类添加一个"粘性头"类,但当它具有粘性时,我显然还需要向我的添加填充,这样内容就不会出现在头后面。
问题是,当通过滚动上的类绑定(v-bind:class="{'fixed-header': stickyHeader}")
添加填充时,这会重新加载所有延迟加载的图像(使用vue-lazy延迟加载的(
这使得所有图像在一瞬间从loading
到loaded
,但非常引人注目。
stickyHeader
是一个布尔值,如果窗口滚动经过某个元素(滚动上有一个事件侦听器:checkHeader()
(,则在滚动时重新计算
checkHeader() {
var elementTarget = document.getElementById("notice");
if(window.scrollY > (elementTarget.offsetTop + elementTarget.offsetHeight)){
this.stickyHeader = true;
}
else{
this.stickyHeader = false;
}
}
有人知道是什么触发了图像在瞬间重新"加载"吗?
要解决这个问题,而不是用v-bind
动态绑定类,我只需用基本的javascript将其添加到滚动侦听器方法中,现在它不会重新发送:(!