2017-05-02 55 views

回答

1

要做到這一點,你可以鉤到時,會顯示一個標籤是引導觸發事件:shown.bs.tab。然後,您可以在前一個標籤的視頻上撥打stop(),同時在當前標籤上撥打start()。試試這個:

$('#tab').on('shown.bs.tab', function(e) { 
    // start videos in new tab 
    $(e.target).find('video').each(function() { 
    this.play(); 
    }); 

    // stop videos in old tab 
    $(e.relatedTarget).find('video').each(function() { 
    this.stop(); 
    }); 
}); 

的引導標籤事件的詳細信息是在documentaton

+0

我相信這兩個事件目標都指向選項卡(錨點)而不是內容。所以它可能是'$('#'+ $(e.target).attr('href'))'或什麼的。請糾正我。 – Chay22

+0

你可能是對的,在這種情況下,最好在選項卡上使用一個類:'$('.tab')。on('shown.bs.tab'...' –

0

提供要添加到rorys回答,如果你想回到舊標籤和恢復你離開的地方,你可以您$('#video').pause()

0

請勿使用該ID。如果你使用ID選擇器,jQuery只返回單個元素(只會選擇DOM中第一個匹配的元素)。使用這個:

$('#tab a').on('click', function() { 
$('#tab .active').find('video').each(function (video) { 
    $(video).get(0).play(); 
}); 
}); 

閱讀this

相關問題