gpt4 book ai didi

javascript - 调整大小后刷新 Skrollr

转载 作者:行者123 更新时间:2023-11-28 17:52:43 25 4
gpt4 key购买 nike

我想要 <nav>在用户通过第一个“ block ”(height: 100%;)后变得固定。我决定使用 Skrollr,因为这是我所知道的立即进行“更改”的唯一方法,而且不会在移动设备和 IE 中出现错误。所以我这样做了:

$("nav").attr("data-" + $("header").height(), "position: fixed;");

这很好用(<nav> 就在 <header> 之后),直到您调整页面大小。所以我这样做了:

$(window).resize(function () {
var style = $("nav").attr("style");
$('nav').each(function() {
var attributes = this.attributes;
var i = attributes.length;
while( i-- ){
this.removeAttributeNode(attributes[i]);
}
})
$("nav").attr("data-" + $("header").height(), "position: fixed;");
$("nav").attr({"data-0": "position: absolute;", "style": style});
});

它采用新的高度,并将其添加为属性并删除所有其他属性(因为如果不这样做,它会添加很多:data-500、data-501、data-502、data-503 ...)并通过查看代码 - 它工作得很好。问题是 Skrollr 没有“看到”变化。我该怎么办?

最佳答案

嗯,这很简单。一行而不是 20 行。

var s = skrollr.init({
constants: {
menuresize: function() {
return $("header").height();
},
vh: '100p'
}
});

我在导航中添加了 data-_menuresize="position: fixed;"(它解释了 menuresize表示在上面的代码中)。

享受 :D!

关于javascript - 调整大小后刷新 Skrollr,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21970973/

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