0
プロジェクトのストリーミングビデオを作成しようとしていますが、htmlを含むnode.jsに作成中です。このエラーで終了できません。 Uncaught TypeError: Can not read property 'getContext' of null
Uncaught TypeError:null Node.jsのプロパティ 'getContext'を読み取ることができません
その後、私はその問題を解決する必要がありますが、私は私が解決策と、このタイプのエラーを求めたことができないため、どれも、私はこれらの行にコメントしていた唯一の問題 に動作するように私のためにアップ働かない:
var context = canvas.getContext("2d");
canvas.width = 800;
canvas.height = 600;
context.width = canvas.width;
context.height = canvas.height
私のプロジエクトのコードはここにあります: Emitirビデオ
<canvas style = "display:none;" id "preview" width='1280' height='720'></canvas>
<div id = "logger"></div>
<script type="text/javascript">
var canvas = document.getElementById("preview");
var context = canvas.getContext("2d"); // This is the line that generates the error
canvas.width = 800;
canvas.height = 600;
context.width = canvas.width;
context.height = canvas.height;
var video = document.getElementById("video");
var socket = io();
function logger(msg)
{
$("#logger").text(msg);
}
function loadCam(stream)
{
video.src = window.URL.createObjectURL(stream);
logger('Camara cargada correctamente [OK]');
}
function loadFail()
{
logger('Camara no conectada, Favor Conectela');
}
function viewVideo(video,context)
{
context.drawImage(video,0,0,context.width,context.height);
socket.emit('stream',canvas.toDataURL('image/webp'));
}
$(function(){
navigator.getUserMedia = (navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msgGetUserMedia);
if (navigator.getUserMedia)
{
navigator.getUserMedia({video: true}, loadCam, loadFail);
}
//1000 = 1 Seg.
setInterval(function(){
viewVideo(video,context);
},70);
});
</script>
</body>
</html>
私は助けapreciateますありがとうございました。
:)になります何に進むことができ、
id="preview"
にid "preview"
を変更する必要があります"'要素が見つからないので、 'null' – adeneoあなたは' = 'at' id "preview" 'を忘れました。その時点で、DOMには 'preview'というidを持つ要素はなく、' document.getElementById( "preview") 'はnullを返します。それ以外は 'node.js'とは関係ありません。 –
' id'属性を誤って入力してしまっていると確信しています。 'id"プレビュー "' 'id =" preview "' – goenning