2013-07-03 87 views
1

對不起,如果標題不清楚。我有一個swiperight和swipeleft事件,當觸發時將音頻源添加到具有自動播放功能的html5音頻標記中。所以如果你向左滑動一首歌曲,並向右滑動另一個彈奏。問題是它只能使用一次。如果我向左滑動歌曲播放,那麼如果我沒有向右滑動,則再次向左滑動,反之亦然。有沒有辦法重置功能?希望這是有道理的,謝謝!下面是我的代碼有沒有辦法清除一個函數執行後?

<script> 
$(document).ready(function() { 
    $("body").bind("swiperight", function(event){ 
     $('#swipe').append(
'<source src="http://a.tumblr.com/tumblr_ljdvcbDIsN1qhk4f9o1.mp3"/>'); 
    }) 

    $("body").bind("swipeleft", function(event) { 
     $('#swipe').append('<source src="http://www.nerdthegame.com/media/audio/soundtrack/Nintendo-Super-Mario-Theme-Song.mp3" />'); 
    }) 
}) 

+0

這是音頻標籤的ID <音頻ID =「滑動」autoPlay =「自動播放」> – user2544928

回答

1

相信刷卡事件處理程序執行的每一次,但你.append()額外<source>元素融入到你的<audio>元素,使得它與多個<source>元素結束。先嚐試刪除以前<source>,您可以用.empty()操作如下:

$(document).ready(function() { 
    $("body").bind("swiperight", function(event){ 
     $('#swipe').empty().append(
'<source src="http://a.tumblr.com/tumblr_ljdvcbDIsN1qhk4f9o1.mp3"/>'); 
    }) 

    $("body").bind("swipeleft", function(event) { 
     $('#swipe').empty().append('<source src="http://www.nerdthegame.com/media/audio/soundtrack/Nintendo-Super-Mario-Theme-Song.mp3" />'); 
    }) 
}) 

似乎然後在小提琴的工作(我沒有使用滑動事件的演示,因爲我在筆記本電腦上測試不一個電話):​​

+0

很好用!非常感謝! – user2544928

相關問題