2013-08-21 24 views
0

我在排除使用audio.js作爲音頻播放器的website。我正嘗試使用點擊方法配置音頻播放器的event callbacks,但它不能識別我的點擊。 然而,它的確如此工作,應該在jsfiddle上。任何幫助非常感謝Onclick不值得audio.js

我所做的 - 消除了所有的CSS和不相關的腳本。 Click方法適用於audiojs類之前和之後的div。

簡碼,我使用的音頻播放器 -

// audio player 
add_shortcode('sp_audio', 'sp_audio_shortcode'); 
function sp_audio_shortcode($atts, $contents = null) 
{ 
    extract(shortcode_atts(array(
     'id' => 'sp-audio-player', 
     'url' => '', 
     ), 
     $atts)); 


    $output .= '<audio preload="none">'; 
     $output .= '<source src="' . $url . '" type="audio/mpeg">'; 
    $output .= '</audio>'; 

    return $output; 
} 

輸出在Chrome的檢查元素

<div class="musicplayer"> 
<div class="audiojs" classname="audiojs" id="audiojs_wrapper5"> 
    <audio preload="none"> 
     <source src="http://soundtrackloops.com/Demo/Electronisounds-AcousticBarefootBeats-DEMO.mp3" type="audio/mpeg"> 
    </audio>   
    <div class="play-pause">    
     <p class="play"></p>    
     <p class="pause"></p>    
     <p class="loading"></p>    
     <p class="error"></p>   
    </div>   
    <div class="scrubber">    
     <div class="progress"></div>    
     <div class="loaded"></div>   
    </div>   
    <div class="time">    
     <em class="played">00:00</em>/<strong class="duration">00:00</strong>   
    </div>   
    <div class="error-message"></div> 
</div> 

我的測試點擊方法

jQuery(document).ready(function($) { 

$(".audiojs").click(function() { 
    alert("CLICK"); 
}); 

初始化AU dio.js

+0

用你的代碼提供一個jsFiddle。 – PiLHA

+0

它在描述 –

回答

0

看起來您在頁面加載後追加音軌,因此您需要使用實時點擊事件。

試試這個:

jQuery(document).ready(function($) { 

$('.audiojs').live('click', function() { 
    alert("CLICK"); 
}); 
+0

.live()被depricated,使用.on()http://api.jquery.com/live/ – circusdei

0

我也有類似的問題,並通過使用音頻對象的事件偵聽器解決了這個問題。我想這取決於你想跟蹤的內容,但是,讓你控制播放和停止等

我適應我的代碼,所以它應該與你合作

audiojs.events.ready(function() { 
var as = audiojs.createAll(); 

$(".audiojs audio").on('playing',function(){ 
    console.log("Push playing"); 
}); 

    // Other callbacks 
}); 

希望你得到它的工作。我每頁只有一個玩家,如果你有更多的只是使用回調中的$(this)元素來確定哪個已被修改。