亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JS實現(xiàn)給不同元素設(shè)置不同的定時器

 更新時間:2022年07月04日 10:56:28   作者:setTimeout()  
這篇文章主要為大家詳細(xì)介紹了JS實現(xiàn)給不同元素設(shè)置不同的定時器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了JS實現(xiàn)給不同元素設(shè)置不同的定時器,供大家參考,具體內(nèi)容如下

案例效果:

上面的紫色盒子打開頁面會自己移動到300px,點擊上面的按鈕,粉色的span才會移動,并且移動到200px。

注意:需要給定時器單獨命名,如果都寫在同一個封裝函數(shù)里面的話,每次都會開辟一個定時器的空間,這樣就會造成資源浪費,所以直接采用給對象添加定時器屬性的方式來節(jié)約空間。同時要注意,在設(shè)置定時器之前要清除掉這個對象的定時器屬性,因為如果不清除的話,當(dāng)連續(xù)按下按鈕的時候就會又開啟一個定時器這樣下面那個span就會越跑越快。

完整代碼如下:

<!DOCTYPE html>
<html lang="en">
?
<head>
? ? <meta charset="UTF-8">
? ? <meta http-equiv="X-UA-Compatible" content="IE=edge">
? ? <meta name="viewport" content="width=device-width, initial-scale=1.0">
? ? <title>Document</title>
? ? <style>
? ? ? ? div {
? ? ? ? ? ? position: absolute;
? ? ? ? ? ? left: 0;
? ? ? ? ? ? top: 50px;
? ? ? ? ? ? width: 200px;
? ? ? ? ? ? height: 200px;
? ? ? ? ? ? background-color: violet;
? ? ? ? }
? ? ? ??
? ? ? ? span {
? ? ? ? ? ? position: absolute;
? ? ? ? ? ? left: 0;
? ? ? ? ? ? top: 270px;
? ? ? ? ? ? display: block;
? ? ? ? ? ? width: 300px;
? ? ? ? ? ? height: 300px;
? ? ? ? ? ? background-color: pink;
? ? ? ? }
? ? </style>
?
</head>
?
<body>
? ? <button>點擊這個按鈕span才移動</button>
? ? <div></div>
? ? <span>sy is sy</span>
? ? <script>
? ? ? ? // 動畫函數(shù)
? ? ? ? // obj代表是哪個對象,target代表移動的距離
? ? ? ? function move(obj, target) {
? ? ? ? ? ? // 當(dāng)我們不斷的點擊按鈕,這個元素的速度會越來越快,因為開啟了太多的定時器
? ? ? ? ? ? // 解決方案就是 讓我們元素只有一個定時器執(zhí)行
? ? ? ? ? ? // 先清除以前的定時器,只保留當(dāng)前的一個定時器執(zhí)行
? ? ? ? ? ? clearInterval(obj.timer);
? ? ? ? ? ? obj.timer = window.setInterval(function() {
? ? ? ? ? ? ? ? if (obj.offsetLeft >= target) {
? ? ? ? ? ? ? ? ? ? window.clearInterval(obj.timer);
? ? ? ? ? ? ? ? } else {
? ? ? ? ? ? ? ? ? ? obj.style.left = obj.offsetLeft + 1 + 'px';
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }, 30);
? ? ? ? }
?
? ? ? ? var div = document.querySelector('div')
? ? ? ? var span = document.querySelector('span')
? ? ? ? var btn = document.querySelector('button')
? ? ? ? move(div, 300);
?
? ? ? ? btn.addEventListener('click', function() {
? ? ? ? ? ? move(span, 200);
? ? ? ? })
? ? </script>
</body>
?
</html>

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:

相關(guān)文章

  • javascript實現(xiàn)簡單搜索功能

    javascript實現(xiàn)簡單搜索功能

    這篇文章主要為大家詳細(xì)介紹了javascript實現(xiàn)簡單搜索功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • JavaScript自定義日期格式化函數(shù)詳細(xì)解析

    JavaScript自定義日期格式化函數(shù)詳細(xì)解析

    下面的一個例子就是以獨立函數(shù)寫出的JavaScript日期格式化函數(shù),獨立的format函數(shù)?;氐礁袷交倪@一知識點上,我們考查的是怎么實現(xiàn)的、運用了哪些原理
    2014-01-01
  • 淺談Javascript中的函數(shù)、this以及原型

    淺談Javascript中的函數(shù)、this以及原型

    下面小編就為大家?guī)硪黄獪\談Javascript中的函數(shù)、this以及原型。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-10-10
  • JavaScript Canvas編寫炫彩的網(wǎng)頁時鐘

    JavaScript Canvas編寫炫彩的網(wǎng)頁時鐘

    這篇文章主要為大家詳細(xì)介紹了JavaScript Canvas編寫炫彩的網(wǎng)頁時鐘,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • css和js實現(xiàn)彈出登錄居中界面完整代碼

    css和js實現(xiàn)彈出登錄居中界面完整代碼

    這篇文章主要介紹了css和js實現(xiàn)彈出登錄居中界面,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-11-11
  • javascript中獲取class的簡單實現(xiàn)

    javascript中獲取class的簡單實現(xiàn)

    下面小編就為大家?guī)硪黄猨avascript中獲取class的簡單實現(xiàn)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-07-07
  • JS 實現(xiàn)百度搜索功能

    JS 實現(xiàn)百度搜索功能

    這篇文章給大家介紹了js實現(xiàn)百度搜索功能,代碼分為html部分和css折疊樣式部分,具體實現(xiàn)代碼大家參考下本文
    2018-02-02
  • 如jQuery般易用的api風(fēng)格代碼分享

    如jQuery般易用的api風(fēng)格代碼分享

    最近幾天閑來無事,隨便寫了點代碼玩了玩。個人覺得,應(yīng)該把編碼當(dāng)做一種樂趣,要不然會覺得很累...
    2011-01-01
  • 小程序?qū)崿F(xiàn)可拖動的懸浮按鈕

    小程序?qū)崿F(xiàn)可拖動的懸浮按鈕

    這篇文章主要為大家詳細(xì)介紹了小程序?qū)崿F(xiàn)可拖動的懸浮按鈕,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • JavaScript實現(xiàn)頁面動態(tài)驗證碼的實現(xiàn)示例

    JavaScript實現(xiàn)頁面動態(tài)驗證碼的實現(xiàn)示例

    這篇文章主要介紹了JavaScript實現(xiàn)頁面動態(tài)驗證碼的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03

最新評論