-
Notifications
You must be signed in to change notification settings - Fork 0
/
snippets.js
77 lines (70 loc) · 2.94 KB
/
snippets.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
/****************** GPS **************************/
var x = document.getElementById("p_geoloc");
function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition, showError);
} else {
x.innerHTML = "Geolocation is not supported by this browser.";
}
}
function showPosition(position) {
x.innerHTML = "Latitude: " + position.coords.latitude +
"<br>Longitude: " + position.coords.longitude;
}
function showError(error) {
switch(error.code) {
case error.PERMISSION_DENIED:
x.innerHTML = "User denied the request for Geolocation."
break;
case error.POSITION_UNAVAILABLE:
x.innerHTML = "Location information is unavailable."
break;
case error.TIMEOUT:
x.innerHTML = "The request to get user location timed out."
break;
case error.UNKNOWN_ERROR:
x.innerHTML = "An unknown error occurred."
break;
}
}
/******************************************************/
/****************** Beschleunigungssensoren **************************/
window.ondevicemotion = function(event) {
var ax = event.accelerationIncludingGravity.x
var ay = event.accelerationIncludingGravity.y
var az = event.accelerationIncludingGravity.z
document.querySelector("#acc").innerHTML = "X = " + ax + "<br>" + "Y = " + ay + "<br>" + "Z = " + az;
}
window.addEventListener("deviceorientation", function(event) {
document.querySelector("#mag").innerHTML = "alpha = " + event.alpha + "<br>" + "beta = " + event.beta + "<br>" + "gamma = " + event.gamma;
}, true);
/******************************************************/
/****************** Kamera **************************/
// Reference to video element.
var video = document.querySelector("#video");
// Ensure cross-browser functionality.
navigator.mediaDevices.getUserMedia({ video: true, audio: true })
.then(stream => video.srcObject = stream)
.catch(e => document.querySelector('#camera').innerHTML = "<p>Kamera nicht benutzbar!</p>");
/******************************************************/
/***************** Toggle Visibility, Display None, Display Block ***********/
var togglevisibility = document.querySelector('#btn_visibility');
/* Klick Event Listener hinzufügen */
togglevisibility.addEventListener ('click',
function() { // anonyme Funktion
btn = document.querySelector("#btn_visibility");
snippets = document.querySelector("#snippets");
if (btn.innerHTML == "Hide"){
snippets.style.visibility="hidden";
btn.innerHTML = "None";
} else if(btn.innerHTML == "None"){
snippets.style.display = "none";
btn.innerHTML = "Show";
} else{
btn.innerHTML = "Hide";
snippets.style.display = "grid";
snippets.style.visibility = "visible";
}
},
true);
/****************************************************************************/