2011-10-20 126 views
3

我有這個鏈接,激活我的網站中的錄音機,但我想激活頁面加載onclick功能。覆蓋onclick頁面加載

我試過使用這個解決方案,但沒有工作我怎麼能加載頁面加載onclick函數請幫助。代碼如下:

<div id="control_panel"> 
    <a id="record_button" onClick="Recorder.record('audio', 'audio.wav');" href="javascript:void (0);" title="Record"><img src="images/record.png" width="24" height="24"  alt="Record"/><!--</a>--> 
    <span id="save_button"> 
     <span id="flashcontent"> 
     <p>Your browser must have JavaScript enabled and the Adobe Flash Player installed.</p> 
     </span> 
     </span> 
     <a id="play_button" style="display:none;" onclick="Recorder.playBack('audio');" href="javascript:void(0);" title="Play"><img src="images/play.png" width="24" height="24" alt="Play"/></a> 
     </div> 

嘗試了所有你想出了一個可能的解決方案,但現在它給我的底部消息,雖然我想這只是在頁面加載,請幫助球員記錄。

這裏是信息:您的瀏覽器必須啓用javascript和Adobe Flash Player的安裝

+0

爲什麼不就叫'Recorder.record('音頻','audio.wav');'? – alex

+0

更好的解決方案是代碼重用。你想從'$(「#record_button」)。click'和'$(document).ready'運行相同的代碼。將要運行的代碼放入函數中,並使用相同的函數處理兩個事件。 –

+0

Yucky onClick事件。您還可以刪除該文件,並在文檔就緒功能中使用.delegate()或甚至.click()來正確綁定事件,即使您要自動啓動它。 –

回答

0

也許類似的東西,但你需要確保Recorder.record()是有效的,當然。

<a id="record_button" href="#" title="Record">a#record_button</a> 
<script type="text/javascript"> 
$(function() { 
    $('#record_button').click(Recorder.record('audio', 'audio.wav')); 
}); 
</script> 
+0

嘿韋恩感謝老兄,但嘿這個功能給了我一個錯誤,雖然會很高興給你的頁面源如果這很好,你看它我一直在尋找和嘗試在這個許多解決方案,但只有你的功能似乎使在這種情況下的差異 – pumba

+0

Pumba,頁面源在這種情況下總是有用的。就像我在我原來的回答中提到的那樣,Recorder.record()必須是有效的,到目前爲止,我還沒有看到任何可以執行此操作的JavaScript API。 Flash ActionScript似乎已經有了一個成熟的API來完成這些工作。國際海事組織,這是更合適的反正:http://livedocs.adobe.com/fms/2/docs/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00000550.html – Wayne

1

解決此問題的最簡單方法是將HTML和JavaScript代碼完全分開。然後,你可以簡單的直接調用click處理負載

HTML:

<a id="record_button" title="Record">...</a> 

的JavaScript:

$(document).ready(function() { 
    var record = function() { 
    Recorder.record('audio', 'audio.wav'); 
    }; 

    // Bind the 'record' action to the link. 
    $('#record_button').click(function(event) { 
    record(); 
    event.preventDefault(); 
    }); 

    // Start it on page load 
    record(); 
}); 

小提琴:http://jsfiddle.net/VRB5H/

+0

我會通過事件到點擊函數,調用event.preventDefault(),並刪除'return false'...但除此之外,這也是我的想法。 –

+0

@GregPettit查看我最近的修改。在發佈並快速編輯到該解決方案後,我想到了完全相同的想法。 – JaredPar

+0

Jared謝謝你,但是函數並沒有調用onclick函數nothing – pumba