JavaScript 公告滾動(dòng)是網(wǎng)站常見的一種交互效果,它可以讓網(wǎng)站公告或者重要消息以滾動(dòng)的形式展現(xiàn)在用戶面前,提高用戶的注意力和提醒效果。下面我將介紹幾種常見的 JavaScript 公告滾動(dòng)的實(shí)現(xiàn)方式。
一、利用原生 JavaScript 實(shí)現(xiàn)
利用原生 JavaScript 可以非常方便地實(shí)現(xiàn)簡單的公告滾動(dòng)效果。下面是一個(gè)實(shí)現(xiàn)的示例:
<script> // 獲取元素 var notice = document.getElementById('notice'); var inner = notice.getElementsByTagName('ul')[0]; var lis = inner.getElementsByTagName('li'); // 定義滾動(dòng)函數(shù) function roll() { inner.style.top = parseInt(inner.style.top) - 1 + 'px'; if (Math.abs(parseInt(inner.style.top)) >lis[0].offsetHeight) { inner.appendChild(lis[0]); inner.style.top = 0; } } // 調(diào)用滾動(dòng)函數(shù),實(shí)現(xiàn)滾動(dòng)效果 setInterval(function() {roll()}, 20); </script>通過上面的代碼,我們可以輕松地實(shí)現(xiàn)一個(gè)垂直方向的公告滾動(dòng)效果。 二、利用 JavaScript 插件實(shí)現(xiàn) 除了利用原生 JavaScript 實(shí)現(xiàn)公告滾動(dòng)效果,還可以使用多種 JavaScript 插件來實(shí)現(xiàn)。下面是使用 jQuery 插件實(shí)現(xiàn)的一個(gè)實(shí)例:
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/jquery.easy-ticker/2.0.2/jquery.easy-ticker.min.js"></script> <script> // 調(diào)用插件,實(shí)現(xiàn)滾動(dòng)效果 $('.ticker').easyTicker({ direction: 'up', easing: 'linear', speed: 'slow', interval: 2000, height: 'auto', visible: 2, mousePause: 1, }); </script>通過上面的代碼,我們可以利用 jQuery 插件,實(shí)現(xiàn)公告內(nèi)容向上滾動(dòng)的效果。 三、利用 CSS 實(shí)現(xiàn) 除了利用 JavaScript 插件和原生 JavaScript 實(shí)現(xiàn)公告滾動(dòng)效果,還可以使用 CSS 來實(shí)現(xiàn)。下面是一個(gè)利用 CSS 實(shí)現(xiàn)公告水平滾動(dòng)效果的實(shí)例:
<div class="notice"> <ul class="inner"> <li>公告1</li> <li>公告2</li> <li>公告3</li> <li>公告4</li> </ul> </div> <style> .notice { width: 100%; overflow: hidden; white-space: nowrap; position: relative; height: 30px; } .inner { position: absolute; left: 100%; top: 0; white-space: nowrap; animation: scroll-last 10s linear infinite; } .inner:hover { animation-play-state: paused; } .inner li { display: inline-block; padding-right: 20px; } @keyframes scroll-last { 0% { left: 100%; } 100% { left: -100%; } } </style>通過上面的代碼,我們可以在不使用 JavaScript 的情況下,利用 CSS 實(shí)現(xiàn)公告水平滾動(dòng)的效果。 綜上所述,在實(shí)現(xiàn) JavaScript 公告滾動(dòng)效果時(shí),有多種方法可以選擇,我們可以選擇利用原生 JavaScript 實(shí)現(xiàn)、使用 JavaScript 插件或者利用 CSS 實(shí)現(xiàn)。根據(jù)實(shí)際需求和網(wǎng)站風(fēng)格來選擇適合的實(shí)現(xiàn)方式。