fxcarbon.js 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. /*
  2. * @Author: zhuzp
  3. * @Date: 2023-10-19 10:01:19
  4. * @Last Modified by: zhuzp
  5. * @Last Modified time: 2023-10-31 18:05:00
  6. */
  7. /**
  8. * 滚动
  9. * @param {Object} e
  10. */
  11. function onScrollHandle(e) {
  12. let scrollTop = document.documentElement.scrollTop || document.body.scrollTop
  13. document.body.classList[scrollTop > 100 ? 'add' : 'remove']('sticky')
  14. ;[].forEach.call(document.querySelectorAll('[data-aos="fade-up"]'), function(item){
  15. item.classList.add('aos-hide')
  16. if(item.getBoundingClientRect().top <= window.innerHeight/1.5 && !item.classList.contains('animated')){
  17. item.classList.add('animated','fadeInUp')
  18. }
  19. })
  20. }
  21. /**
  22. * 空状态
  23. */
  24. var emptyDialog = {
  25. show: function(e){
  26. var target = e.target
  27. var dislog = document.querySelector('#empty_dislog')
  28. if(!target.dataset['disabled']){
  29. return false
  30. }
  31. e.preventDefault()
  32. if(!dislog){
  33. dislog = document.createElement('div')
  34. dislog.className = 'empty-dislog'
  35. dislog.id = 'empty_dislog'
  36. dislog.innerHTML = '<div class="musk"></div><div class="content"><span class="close-button">×</span>系统建设中,敬请期待~</div>'
  37. }
  38. dislog.classList.add('visible')
  39. dislog.addEventListener('click', emptyDialog.hide)
  40. document.body.appendChild(dislog)
  41. },
  42. hide: function(e){
  43. var target = e.target
  44. if(target.className == 'musk' || target.className == 'close-button'){
  45. console.log(this)
  46. this.classList.remove('visible')
  47. this.removeEventListener('click', emptyDialog.hide)
  48. }
  49. }
  50. }
  51. var recommend_tab = document.querySelector('#recommend_tab')
  52. window.addEventListener('scroll', onScrollHandle)
  53. recommend_tab && recommend_tab.addEventListener('click', emptyDialog.show)
  54. window.Swiper && new Swiper('#banner_swiper', {
  55. autoplay: true,
  56. loop: true,
  57. pagination: {
  58. el: '.swiper-pagination',
  59. clickable: true
  60. },
  61. })
  62. var slideInit = -1
  63. function autoSlideChange(){
  64. autoSlideChange.timer && clearTimeout(autoSlideChange.timer)
  65. if(autoSlideChange.stop){
  66. return false
  67. }
  68. autoSlideChange.index += 1
  69. if(autoSlideChange.index > 4){
  70. autoSlideChange.index = 0
  71. }
  72. var $current = $($('#slide_list li')[autoSlideChange.index])
  73. $current.addClass('current').siblings().removeClass('current')
  74. $('#slide_show').html($current.html())
  75. autoSlideChange.timer = setTimeout(autoSlideChange, 5E3)
  76. }
  77. autoSlideChange.index = -1
  78. autoSlideChange()
  79. $('#slide_list').on('click', 'li', function(){
  80. autoSlideChange.stop = true
  81. $(this).addClass('current').siblings().removeClass('current')
  82. $('#slide_show').html($(this).html())
  83. })