我目前正在开发一个名为 Affdex 的 Affectiva 技术项目。我目前正在参与测试 SDK 的评估。我已经建立了一个简单的网站,但是这个 HTML 按钮似乎什么也没做。现在,做一些测试,我看到以下内容:
-第一次尝试:将SDK作为JS文件下载到本地。结果是,在 Web 浏览器控制台中,该按钮不执行任何操作,空白,但不是在函数中执行 SDK 的代码并替换为 JS 警报,而是有效。
-第二次尝试:远程引用,我收到一个错误,上面写着:“未定义未捕获的引用错误 onStart”这对我来说很奇怪,因为假设我尝试更改引用顺序,我无法弄清楚发生了什么。
所以,我现在要附上我的代码:-HTML:
<!DOCTYPE html>
<html>
<head>
<title>HOME</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript" src="affdex.js"></script>
<script type="text/javascript" src="detector.js"></script>
</head>
<body>
<button id="start" onclick="onStart()">Start</button>
</body>
</html>
以防万一远程SDK应该是:
<script src="https://download.affectiva.com/js/3.2/affdex.js"/>
最后是我的 JS 文件,它应该使网站至少在控制台中与 SDK 互补:
var divRoot = $("#affdex_elements")[0];
var width = 640;
var height = 480;
var faceMode = affdex.FaceDetectorMode.LARGE_FACES;
var detector = new affdex.CameraDetector(divRoot, width, height, faceMode);
detector.detectAllExpressions();
detector.addEventListener("onInitializeSuccess", function() {
log('#logs', "The detector reports initialized");
$("#face_video_canvas").css("display", "block");
$("#face_video").css("display", "none");
});
function log(node_name, msg) {
$(node_name).append("<span>" + msg + "</span><br />")
}
function onStart() {
if (detector && !detector.isRunning) {
$("#logs").html("");
detector.start();
}
log('#logs', "Clicked the start button");
}
detector.addEventListener("onWebcamConnectSuccess", function() {
log('#logs', "Webcam access allowed");
});
detector.addEventListener("onWebcamConnectFailure", function() {
log('#logs', "webcam denied");
console.log("Webcam access denied");
});
detector.addEventListener("onStopSuccess", function() {
log('#logs', "The detector reports stopped");
$("#results").html("");
});