我有這個源代碼來在瀏覽器中錄製音頻。 Record.js調用另一個腳本來提供錄製音頻並將其保存到服務器。更多功能的一個按鈕=使用JavaScript錄製
的index.html
<button type="submit" onclick="toggleRecording()" data-run="0"></button>
record.js
現在該記錄系統工作在這個步驟:
1. function init()
運行immediatelly當頁面被加載和用戶之後允許麥克風在消息startusermedia
功能
-
點擊後
- 運行開啓按鈕運行
toggleRecording(button)
開始錄製音頻的功能
3.第二次點擊按鈕運行toggleRecording
停止錄製音頻的功能。
我想在這個步驟來解決這個系統,如果它是可能的: 1.按鈕運行函數init
和startusermedia
和togglerecording
第一次點擊所以錄音將點擊 2.第二次點擊後立即啓動會調用toggleRecording
功能停止錄製
我試着修改record.js
的代碼,所以我把這部分加到了源代碼的頂部,所以通過點擊按鈕就可以調用功能start_KEMT
而不是toggleRecording()
。創建Start_KEMT是因爲我想按正確的順序運行函數。
新增部分的record.js
var recording = false;
var recordButton = document.getElementById('recordButton');
//function which is called by click on button
function start_KEMT() {
if(!recording)
{
init();
toggleRecording(recordButton);
}
toggleRecording(recordButton);
recording = !recording;
}
也起到init()
進行了修改,所以我改變它:window.onload = function init()
運作init()
。所以它通過點擊按鈕來調用,而不是通過瀏覽器自動調用。現在它以這種方式工作:在點擊按鈕後,它顯示消息以允許麥克風,然後允許消息顯示:「'用於錄製的系統可用。' (函數startUserMedia
的叫法)。之後記錄犯規開始後第二次點擊網絡瀏覽器的消息再次顯示,讓MIC和控制檯顯示此錯誤:。
Uncaught TypeError: Cannot read property 'getAttribute' of null
請給我任何例如如何做到這一點。正確的,我在JS新本主題是一樣的:One button to run more functions JavaScript (recording audio in browser)
變種運行= parseInt函數(的getAttribute( '數據運行'));你嘗試獲取屬性數據 - 沒有任何....運行的問題...你必須從按鈕中獲取屬性,就像你在代碼中執行的那樣... – Julo0sS
var run = parseInt (button.getAttribute( '數據運行')); .............. – Julo0sS
@ Julo0sS問題已更新。我用「按鈕」元素嘗試過,但它以相同的方式工作,並顯示相同的錯誤消息。 – Nikolaus