main.js 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. $(document).ready(function () {
  2. AOS.init({
  3. duration: 1000,
  4. });
  5. let navbar = $(".navbar");
  6. let backupTop = $("#backupTop");
  7. let themeToggle = $("#themeToggle");
  8. let tools = $(".tools"); // 添加tools元素引用
  9. $(window).scroll(function () {
  10. let scrollTop = $(window).scrollTop();
  11. // 导航栏背景切换逻辑
  12. if (scrollTop > 100) {
  13. navbar.removeClass('bg-transparent').removeClass('has-img').addClass('bg-blur');
  14. } else {
  15. navbar.removeClass('bg-blur').addClass('bg-transparent').addClass('has-img');
  16. }
  17. // tools工具栏显示逻辑 - 滚动超过900px时显示
  18. if (scrollTop > 900) {
  19. tools.fadeIn(300); // 淡入显示
  20. } else {
  21. tools.fadeOut(300); // 淡出隐藏
  22. }
  23. });
  24. backupTop.click(function () {
  25. $('html, body').animate({
  26. scrollTop: 0
  27. }, 500);
  28. });
  29. themeToggle.click(function () {
  30. let html = $(document.documentElement);
  31. let darkMode = $(".dark__mode");
  32. let lightMode = $(".light__mode");
  33. if (html.hasClass("dark")) {
  34. html.removeClass("dark");
  35. darkMode.removeClass("d-none");
  36. lightMode.removeClass("d-none");
  37. lightMode.addClass("d-none");
  38. darkMode.removeClass("d-none");
  39. } else {
  40. html.addClass("dark");
  41. darkMode.removeClass("d-none");
  42. lightMode.removeClass("d-none");
  43. darkMode.addClass("d-none");
  44. lightMode.removeClass("d-none");
  45. }
  46. if (html.attr("data-bs-theme") === "dark") {
  47. html.removeAttr("data-bs-theme");
  48. } else {
  49. html.attr("data-bs-theme", "dark");
  50. }
  51. });
  52. });