JavaScript跑馬燈的實現

一、JS跑馬燈插件

JS跑馬燈插件是一種非常便捷的JS代碼解決方案,它不需要我們自己實現代碼,而是直接調用插件庫中的代碼來實現該功能。像jQuery、Bootstrap、Vue等流行庫都提供了跑馬燈插件,我們只需按照官方文檔引入插件即可輕鬆實現跑馬燈效果。

下面是使用jQuery輪播插件slick來實現跑馬燈的代碼示例:

// 引入jQuery
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
// 引入slick插件
<link rel="stylesheet" type="text/css" href="//cdn.jsdelivr.net/jquery.slick/1.6.0/slick.css"/>
<script type="text/javascript" src="//cdn.jsdelivr.net/jquery.slick/1.6.0/slick.min.js"></script>

// 在HTML中添加以下DOM結構
<div class="slider">
  <div>Slide 1</div>
  <div>Slide 2</div>
  <div>Slide 3</div>
</div>

// 根據文檔,在我們的JavaScript文件中調用slick插件
$(document).ready(function(){
  $('.slider').slick({
    slidesToShow: 1,
    slidesToScroll: 1,
    autoplay: true,
    autoplaySpeed: 2000,
    arrows: false,
    dots: false
  });
});

二、JS跑馬燈代碼

如果我們想自己實現JS跑馬燈的代碼,可以遵循以下步驟:

1、在HTML中添加DOM結構

<div class="marquee">
  <ul>
    <li>List Item 1</li>
    <li>List Item 2</li>
    <li>List Item 3</li>
    <li>List Item 4</li>
    <li>List Item 5</li>
  </ul>
</div>

2、使用JavaScript獲取DOM元素,進行向左或向右的滾動

var marquee = document.querySelector('.marquee ul');
var clone = marquee.cloneNode(true);
marquee.parentNode.appendChild(clone);

var i = 0;
function animate() {
  i++;
  if (i == marquee.children.length) {
    i = 0;
    clone.style.left = "0";
  }
  marquee.style.left = -i * 100 + "px";
  clone.style.left = (marquee.children.length - i) * 100 + "px";
}
setInterval(animate, 20);

三、JS跑馬燈輸入框文字

有時我們需要在JS跑馬燈中添加一些輸入框元素。下面是添加輸入框元素的示例代碼:

<div class="marquee">
  <ul>
    <li>List Item 1</li>
    <li>List Item 2</li>
    <li><input type="text" value="List Item 3" /></li>
    <li>List Item 4</li>
    <li>List Item 5</li>
  </ul>
</div>

添加輸入框後,我們可以通過JS代碼對輸入框內的文字進行操作,例如:

var input = document.querySelector('.marquee input');
setInterval(function() {
  var text = input.value;
  input.value = text.slice(1) + text.slice(0, 1);
}, 200);

四、JS實現跑馬燈選取

JS實現跑馬燈選取,可以根據點擊跑馬燈中的元素,來將該元素作為選取的內容。以下是一個實現跑馬燈選取的示例代碼:

var options = document.querySelectorAll('.marquee li');
for (var i = 0; i < options.length; i++) {
  options[i].addEventListener('click', function() {
    alert(this.innerHTML);
  });
}

以上代碼會在點擊跑馬燈中的元素時彈出一個框,提示當前選中的元素的內容。

五、JS跑馬燈自定義樣式

JS跑馬燈的樣式可以進行修改來實現不同的效果。下面是一個可以自定義樣式的示例代碼:

.marquee {
  height: 70px;
  overflow: hidden;
  position: relative;
  background-color: #f0f0f0;
}
.marquee ul {
  position: absolute;
  width: 200%;
  left: 0;
  padding: 0;
  margin: 0;
  animation: marquee 10s linear infinite;
}
.marquee li {
  display: inline-block;
  width: 25%;
  text-align: center;
  border: 1px solid #ccc;
  background-color: #fff;
}

@keyframes marquee {
  0% { left: 0; }
  100% { left: -100%; }
}

以上代碼會在跑馬燈中添加圓角矩形的邊框,並在鼠標懸浮在跑馬燈中的元素時添加背景色。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/219682.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-09 11:00
下一篇 2024-12-09 11:00

相關推薦

  • 使用JavaScript日期函數掌握時間

    在本文中,我們將深入探討JavaScript日期函數,並且從多個視角介紹其應用方法和重要性。 一、日期的基本表示與獲取 在JavaScript中,使用Date對象來表示日期和時間,…

    編程 2025-04-28
  • JavaScript中使用new Date轉換為YYYYMMDD格式

    在JavaScript中,我們通常會使用Date對象來表示日期和時間。當我們需要在網站上顯示日期時,很多情況下需要將Date對象轉換成YYYYMMDD格式的字符串。下面我們來詳細了…

    編程 2025-04-27
  • JavaScript中修改style屬性的方法和技巧

    一、基本概念和方法 style屬性是JavaScript中一個非常重要的屬性,它可以用來控制HTML元素的樣式,包括顏色、大小、字體等等。這裡介紹一些常用的方法: 1、通過Java…

    編程 2025-04-25
  • JavaScript中的Object.getOwnPropertyDescriptors()

    一、簡介 Object.getOwnPropertyDescriptors()是JavaScript中一個非常有用的工具。簡單來說,這個方法可以獲取一個對象上所有自有屬性的屬性描述…

    編程 2025-04-25
  • CloneDeep函數在Javascript開發中的應用

    一、CloneDeep的概念 CloneDeep函數在Javascript中是一種深層克隆對象的方法,可以在拷貝對象時避免出現引用關係。使用者可以在函數中設置可選參數使其滿足多種拷…

    編程 2025-04-25
  • JavaScript保留整數的完整指南

    JavaScript是一種通用腳本語言,非常適合Web應用程序開發。在處理數字時,JavaScript可以處理整數和浮點數。在本文中,我們將重點關注JavaScript如何保留整數…

    編程 2025-04-25
  • JavaScript點擊事件全方位指南

    一、click事件基礎 click事件是最常用的鼠標事件之一,當元素被單擊時觸發。click事件適用於大多數HTML元素(<a>、<button>)和SVG…

    編程 2025-04-25
  • 詳解JavaScript onclick事件

    一、onclick的基礎知識 onclick事件是JavaScript中最常用的事件之一,它在用戶點擊某個HTML元素時觸發。通常我們可以通過給元素添加一個onclick屬性來綁定…

    編程 2025-04-25
  • JavaScript淺拷貝

    一、什麼是淺拷貝 在JavaScript中,淺拷貝是一種將源對象的屬性複製到目標對象中的方法。淺拷貝的實現方式有多種,包括直接賦值、Object.assign()、展開運算符、co…

    編程 2025-04-25
  • JavaScript 數組轉成字符串

    一、數組轉成字符串的基本操作 在 JS 中,將數組轉成字符串是一項最基本但也最常見的操作之一。我們可以使用 Array 類型內置的 join() 方法實現。它將數組的元素連接成一個…

    編程 2025-04-25

發表回復

登錄後才能評論