修改滚动的js

master
ybc 3 weeks ago
parent 2ed1f1e67e
commit 94eb7d6646

@ -567,34 +567,40 @@ bottom: 75px;
<div class="bottomlogo">© 1998-2026 Highlights Travel Co., Ltd. <br>All rights reserved. </div> <div class="bottomlogo">© 1998-2026 Highlights Travel Co., Ltd. <br>All rights reserved. </div>
</footer> </footer>
<!-- <script> <script>
(function (w, d, i) { (function (w, d, i) {
function debounce(func, wait) { function debounce(func, wait) {
let timeout; let timeout;
return function () { return function () {
const context = this; const context = this;
const args = arguments; const args = arguments;
clearTimeout(timeout); clearTimeout(timeout);
timeout = setTimeout(() => func.apply(context, args), wait); timeout = setTimeout(() => func.apply(context, args), wait);
}; };
} }
var navbar = d.getElementById(i); const menuEl = document.getElementById("ml-menu");
var prevScrollpos = w.pageYOffset; const navbar = d.getElementById(i);
w.onscroll = debounce(function () { let prevScrollpos = w.pageYOffset;
var currentScrollPos = w.pageYOffset; w.onscroll = debounce(function () {
if (Math.abs(currentScrollPos - prevScrollpos) > 5) { // 滚动阈值 const isMenuOpen = menuEl.classList.contains("menu--open");
if (prevScrollpos > currentScrollPos) { if (isMenuOpen) {
navbar.style.top = '0';
return;
}
const currentScrollPos = w.pageYOffset;
if (Math.abs(currentScrollPos - prevScrollpos) > 5) {
if (prevScrollpos > currentScrollPos) {
navbar.style.top = '0'; navbar.style.top = '0';
} else { } else {
navbar.style.top = '-100px'; navbar.style.top = '-100px';
}
prevScrollpos = currentScrollPos;
} }
}, 25) // 防止快速滚动时频繁触发 prevScrollpos = currentScrollPos;
}
}, 25);
})(window, document, 'header'); })(window, document, 'header');
</script> </script>
-->
<script>/* memu js https://data.chinahighlights.com/js/mobile-menu.js */ <script>/* memu js https://data.chinahighlights.com/js/mobile-menu.js */
(function (window) { function classReg(className) { return new RegExp("(^|\\s+)" + className + "(\\s+|$)") } var hasClass, addClass, removeClass; if ("classList" in document.documentElement) { hasClass = function (elem, c) { return elem.classList.contains(c) }; addClass = function (elem, c) { elem.classList.add(c) }; removeClass = function (elem, c) { elem.classList.remove(c) } } else { hasClass = function (elem, c) { return classReg(c).test(elem.className) }; addClass = function (elem, c) { if (!hasClass(elem, c)) { elem.className = elem.className + " " + c } }; removeClass = function (elem, c) { elem.className = elem.className.replace(classReg(c), " ") } } function toggleClass(elem, c) { var fn = hasClass(elem, c) ? removeClass : addClass; fn(elem, c) } var classie = { hasClass: hasClass, addClass: addClass, removeClass: removeClass, toggleClass: toggleClass, has: hasClass, add: addClass, remove: removeClass, toggle: toggleClass }; if (typeof define === "function" && define.amd) { define(classie) } else { if (typeof exports === "object") { module.exports = classie } else { window.classie = classie } } })(window); (function (window) { function classReg(className) { return new RegExp("(^|\\s+)" + className + "(\\s+|$)") } var hasClass, addClass, removeClass; if ("classList" in document.documentElement) { hasClass = function (elem, c) { return elem.classList.contains(c) }; addClass = function (elem, c) { elem.classList.add(c) }; removeClass = function (elem, c) { elem.classList.remove(c) } } else { hasClass = function (elem, c) { return classReg(c).test(elem.className) }; addClass = function (elem, c) { if (!hasClass(elem, c)) { elem.className = elem.className + " " + c } }; removeClass = function (elem, c) { elem.className = elem.className.replace(classReg(c), " ") } } function toggleClass(elem, c) { var fn = hasClass(elem, c) ? removeClass : addClass; fn(elem, c) } var classie = { hasClass: hasClass, addClass: addClass, removeClass: removeClass, toggleClass: toggleClass, has: hasClass, add: addClass, remove: removeClass, toggle: toggleClass }; if (typeof define === "function" && define.amd) { define(classie) } else { if (typeof exports === "object") { module.exports = classie } else { window.classie = classie } } })(window);
!function (e, n, t) { !function (e, n, t) {

Loading…
Cancel
Save