第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

單擊每個標簽時更改數(shù)組中的音頻 src (Jquery)

單擊每個標簽時更改數(shù)組中的音頻 src (Jquery)

蕪湖不蕪 2023-04-01 16:13:57
我想在單擊每個 a 標簽時更改音頻 src,例如,當我單擊第一個 a 標簽時,應(yīng)該只播放數(shù)組中的第一個 src 等等。我寫了這段代碼,但是通過點擊一個標簽,src 每次都會改變(我想要第一個 src 只用于第一個標簽,第二個用于第二個...);  $(function () {        const sources = [            '1',            '2',            '3',            '4',            '5',            '6',            '7',            '8',            '9',            '10'        ];        for (var i = 0; i < $('a').length; i++) {            $('a').eq(i).on('click', function () {                if (i <                    sources.length ) {                    i++;                } else {                    i = 0;                }                $('#music').attr('src', sources[i]);                $('#music').get(0).play();            })        };    });
查看完整描述

2 回答

?
慕森卡

TA貢獻1806條經(jīng)驗 獲得超8個贊

如果我沒看錯,那么您可以使用$.index()獲取被單擊元素的源<a>。

.index()?/?.index( selector )?/?.index( object )

描述:從匹配的元素中搜索給定的元素。

返回值
如果沒有參數(shù)傳遞給該.index()方法,則返回值是一個整數(shù),表示第一個元素在 jQuery 對象中相對于其兄弟元素的位置。

如果.index()在元素集合上調(diào)用并且傳入 DOM 元素或 jQuery 對象,.index()則返回一個整數(shù),指示傳遞的元素相對于原始集合的位置。

如果選擇器字符串作為參數(shù)傳遞,.index()則返回一個整數(shù),指示 jQuery 對象中第一個元素相對于選擇器匹配的元素的位置。如果沒有找到該元素,.index()將返回-1。

$(function() {

? const sources = [ '1','2','3','4','5','6','7','8','9','10' ],

? ? ? ? anchors = $("a");


? anchors.on('click', function(ev) {

? ? ev.preventDefault();

??

? ? const indexOfClickedAnchor = anchors.index(this),

? ? ? ? ? source = sources[indexOfClickedAnchor];

??

? ? console.log(indexOfClickedAnchor, source);

??

? ? /*?

? ? $('#music').attr('src', source)

? ? ? ? ? ? ? ?.get(0)

? ? ? ? ? ? ? ?.play();

? ? */

? });

});

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<a href="">1</a><a href="">2</a><a href="">3</a><a href="">4</a><a href="">5</a>

<a href="">6</a><a href="">7</a><a href="">8</a><a href="">9</a><a href="">10</a>


查看完整回答
反對 回復(fù) 2023-04-01
?
飲歌長嘯

TA貢獻1951條經(jīng)驗 獲得超3個贊

該i變量已提升,因此您應(yīng)該將其聲明為 let(如果 ES2015 可行)或為此使用閉包。此外,您可能不應(yīng)該i像以前那樣在循環(huán)內(nèi)部進行修改,這樣您就不需要考慮無限循環(huán)的情況。更好的循環(huán)是:


const a = $('a');

for (let i = 0; i < a.length; i++) {

    a[i].on('click', function () {

        $('#music').attr('src', sources[i % sources.length]);

        $('#music').get(0).play();

    })

};


查看完整回答
反對 回復(fù) 2023-04-01
  • 2 回答
  • 0 關(guān)注
  • 132 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號