crossbrowdy
Version:
A Multimedia JavaScript framework to create real cross-platform and hybrid game engines, games, emulators, multimedia libraries and apps.
1,925 lines (666 loc) • 59.6 kB
HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>CrossBrowdy API documentation Namespace: Orientation</title>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/sunlight.default.css">
<link type="text/css" rel="stylesheet" href="styles/site.cosmo.css">
</head>
<body style="min-width:800px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<div class="navbar navbar-default navbar-fixed-top ">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand" href="index.html">CrossBrowdy API documentation</a>
<button class="navbar-toggle" type="button" data-toggle="collapse" data-target="#topNavigation">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="navbar-collapse collapse" id="topNavigation">
<ul class="nav navbar-nav">
<li class="dropdown">
<a href="namespaces.list.html" class="dropdown-toggle" data-toggle="dropdown">Namespaces<b class="caret"></b></a>
<ul class="dropdown-menu inline">
<li><a href="CB_Arrays.html">CB_Arrays</a></li><li><a href="CB_AudioDetector.html">CB_AudioDetector</a></li><li><a href="CB_Client.html">CB_Client</a></li><li><a href="CB_Collisions.html">CB_Collisions</a></li><li><a href="CB_Configuration.html">CB_Configuration</a></li><li><a href="CB_Configuration.CrossBase.html">CB_Configuration.CrossBase</a></li><li><a href="CB_Configuration.CrossBrowdy.html">CB_Configuration.CrossBrowdy</a></li><li><a href="CB_Controllers.html">CB_Controllers</a></li><li><a href="CB_Controllers_Proprietary.html">CB_Controllers_Proprietary</a></li><li><a href="CB_Controllers_Proprietary.WII.html">CB_Controllers_Proprietary.WII</a></li><li><a href="CB_Controllers_Proprietary.WII_U.html">CB_Controllers_Proprietary.WII_U</a></li><li><a href="CB_Device.html">CB_Device</a></li><li><a href="CB_Device.AmbientLight.html">CB_Device.AmbientLight</a></li><li><a href="CB_Device.Battery.html">CB_Device.Battery</a></li><li><a href="CB_Device.Location.html">CB_Device.Location</a></li><li><a href="CB_Device.Motion.html">CB_Device.Motion</a></li><li><a href="CB_Device.Orientation.html">CB_Device.Orientation</a></li><li><a href="CB_Device.Proximity.html">CB_Device.Proximity</a></li><li><a href="CB_Device.Vibration.html">CB_Device.Vibration</a></li><li><a href="CB_Elements.html">CB_Elements</a></li><li><a href="CB_Events.html">CB_Events</a></li><li><a href="CB_Keyboard.html">CB_Keyboard</a></li><li><a href="CB_Keyboard.chars.html">CB_Keyboard.chars</a></li><li><a href="CB_Keyboard.extended.html">CB_Keyboard.extended</a></li><li><a href="CB_Keyboard.keys.html">CB_Keyboard.keys</a></li><li><a href="CB_Modules.html">CB_Modules</a></li><li><a href="CB_Mouse.html">CB_Mouse</a></li><li><a href="CB_Mouse.CursorImage.html">CB_Mouse.CursorImage</a></li><li><a href="CB_Net.html">CB_Net</a></li><li><a href="CB_Net.Fetch.html">CB_Net.Fetch</a></li><li><a href="CB_Net.REST.html">CB_Net.REST</a></li><li><a href="CB_Net.Sockets.html">CB_Net.Sockets</a></li><li><a href="CB_Net.Sockets.SockJS.html">CB_Net.Sockets.SockJS</a></li><li><a href="CB_Net.XHR.html">CB_Net.XHR</a></li><li><a href="CB_Pointer.html">CB_Pointer</a></li><li><a href="CB_Screen.html">CB_Screen</a></li><li><a href="CB_Speaker.html">CB_Speaker</a></li><li><a href="CB_Touch.html">CB_Touch</a></li><li><a href="CB_baseSymbols.html">CB_baseSymbols</a></li>
</ul>
</li>
<li class="dropdown">
<a href="classes.list.html" class="dropdown-toggle" data-toggle="dropdown">Classes<b class="caret"></b></a>
<ul class="dropdown-menu inline">
<li><a href="CB_AudioFile.html">CB_AudioFile</a></li><li><a href="CB_AudioFileCache.html">CB_AudioFileCache</a></li><li><a href="CB_AudioFileSprites.html">CB_AudioFileSprites</a></li><li><a href="CB_AudioFileSpritesPool.html">CB_AudioFileSpritesPool</a></li><li><a href="CB_AudioFile_API.AAPI.html">CB_AudioFile_API.AAPI</a></li><li><a href="CB_AudioFile_API.ACMP.html">CB_AudioFile_API.ACMP</a></li><li><a href="CB_AudioFile_API.SM2.html">CB_AudioFile_API.SM2</a></li><li><a href="CB_AudioFile_API.WAAPI.html">CB_AudioFile_API.WAAPI</a></li><li><a href="CB_Canvas.html">CB_Canvas</a></li><li><a href="CB_GraphicSprites.html">CB_GraphicSprites</a></li><li><a href="CB_GraphicSpritesScene.html">CB_GraphicSpritesScene</a></li>
</ul>
</li>
<li class="dropdown">
<a href="global.html" class="dropdown-toggle" data-toggle="dropdown">Global<b class="caret"></b></a>
<ul class="dropdown-menu inline">
<li><a href="global.html#CB_BASE_NAME">CB_BASE_NAME</a></li><li><a href="global.html#CB_CREDITS_DEFAULT">CB_CREDITS_DEFAULT</a></li><li><a href="global.html#CB_NAME">CB_NAME</a></li><li><a href="global.html#CB_OPTIONS">CB_OPTIONS</a></li><li><a href="global.html#CB_VERSION">CB_VERSION</a></li><li><a href="global.html#CB_addCredits">CB_addCredits</a></li><li><a href="global.html#CB_baseToBase">CB_baseToBase</a></li><li><a href="global.html#CB_baseToInt">CB_baseToInt</a></li><li><a href="global.html#CB_br2nl">CB_br2nl</a></li><li><a href="global.html#CB_brToNl">CB_brToNl</a></li><li><a href="global.html#CB_combineArraysOrObjects">CB_combineArraysOrObjects</a></li><li><a href="global.html#CB_combineAutomatically">CB_combineAutomatically</a></li><li><a href="global.html#CB_combineJSON">CB_combineJSON</a></li><li><a href="global.html#CB_combineURIParameters">CB_combineURIParameters</a></li><li><a href="global.html#CB_combineURLParameters">CB_combineURLParameters</a></li><li><a href="global.html#CB_console">CB_console</a></li><li><a href="global.html#CB_copyObject">CB_copyObject</a></li><li><a href="global.html#CB_countDecimalDigits">CB_countDecimalDigits</a></li><li><a href="global.html#CB_countDecimalPart">CB_countDecimalPart</a></li><li><a href="global.html#CB_countDecimals">CB_countDecimals</a></li><li><a href="global.html#CB_countIntegerDigits">CB_countIntegerDigits</a></li><li><a href="global.html#CB_countIntegerPart">CB_countIntegerPart</a></li><li><a href="global.html#CB_credits">CB_credits</a></li><li><a href="global.html#CB_forEach">CB_forEach</a></li><li><a href="global.html#CB_forceString">CB_forceString</a></li><li><a href="global.html#CB_getBase64StringObject">CB_getBase64StringObject</a></li><li><a href="global.html#CB_getCookie">CB_getCookie</a></li><li><a href="global.html#CB_getDatum">CB_getDatum</a></li><li><a href="global.html#CB_getJSONPropertyValue">CB_getJSONPropertyValue</a></li><li><a href="global.html#CB_getLZStringObject">CB_getLZStringObject</a></li><li><a href="global.html#CB_getValueIndex">CB_getValueIndex</a></li><li><a href="global.html#CB_getValuePath">CB_getValuePath</a></li><li><a href="global.html#CB_includeJSFile">CB_includeJSFile</a></li><li><a href="global.html#CB_indexOf">CB_indexOf</a></li><li><a href="global.html#CB_init">CB_init</a></li><li><a href="global.html#CB_intToBase">CB_intToBase</a></li><li><a href="global.html#CB_isArray">CB_isArray</a></li><li><a href="global.html#CB_isEmail">CB_isEmail</a></li><li><a href="global.html#CB_isFileLocal">CB_isFileLocal</a></li><li><a href="global.html#CB_isString">CB_isString</a></li><li><a href="global.html#CB_lastIndexOf">CB_lastIndexOf</a></li><li><a href="global.html#CB_ltrim">CB_ltrim</a></li><li><a href="global.html#CB_nl2br">CB_nl2br</a></li><li><a href="global.html#CB_nlToBr">CB_nlToBr</a></li><li><a href="global.html#CB_numberFormat">CB_numberFormat</a></li><li><a href="global.html#CB_numberOfDecimalDigits">CB_numberOfDecimalDigits</a></li><li><a href="global.html#CB_numberOfDecimals">CB_numberOfDecimals</a></li><li><a href="global.html#CB_numberOfIntegerDigits">CB_numberOfIntegerDigits</a></li><li><a href="global.html#CB_parseJSON">CB_parseJSON</a></li><li><a href="global.html#CB_parseString">CB_parseString</a></li><li><a href="global.html#CB_regularExpressionString">CB_regularExpressionString</a></li><li><a href="global.html#CB_renderString">CB_renderString</a></li><li><a href="global.html#CB_replaceAll">CB_replaceAll</a></li><li><a href="global.html#CB_rtrim">CB_rtrim</a></li><li><a href="global.html#CB_scriptPath">CB_scriptPath</a></li><li><a href="global.html#CB_scriptPathCalculate">CB_scriptPathCalculate</a></li><li><a href="global.html#CB_setCookie">CB_setCookie</a></li><li><a href="global.html#CB_setDatum">CB_setDatum</a></li><li><a href="global.html#CB_sizeOf">CB_sizeOf</a></li><li><a href="global.html#CB_sizeof">CB_sizeof</a></li><li><a href="global.html#CB_stringifyJSON">CB_stringifyJSON</a></li><li><a href="global.html#CB_symmetricCall">CB_symmetricCall</a></li><li><a href="global.html#CB_symmetricCallClear">CB_symmetricCallClear</a></li><li><a href="global.html#CB_this">CB_this</a></li><li><a href="global.html#CB_trim">CB_trim</a></li>
</ul>
</li>
</ul>
<div class="col-sm-3 col-md-3">
<form class="navbar-form" role="search">
<div class="input-group">
<input type="text" class="form-control" placeholder="Search" name="q" id="search-input">
<div class="input-group-btn">
<button class="btn btn-default" id="search-submit"><i class="glyphicon glyphicon-search"></i></button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
<div class="container" id="toc-content" style="width:100%;">
<div class="row" style="width:100%;">
<div class="col-md-8" style="width:85%;">
<div id="main">
<h1 class="page-title">Namespace: Orientation</h1>
<section>
<header>
<h2>
<span class="ancestors"><a href="CB_Device.html">CB_Device</a>.</span>
Orientation
</h2>
</header>
<article>
<div class="container-overview">
<div class="description"><p>Static class to manage the device's orientation. It will return itself if it is tried to be instantiated.</p></div>
<dl class="details">
<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
<dd class="tag-source">
<ul class="dummy">
<li>
<a href="CrossBase_device_CB_Device.js.html">CrossBase/device/CB_Device.js</a>,
<a href="CrossBase_device_CB_Device.js.html#sunlight-1-line-394">line 394</a>
</li>
</ul>
</dd>
<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
<dd class="tag-todo">
<ul>
<li>Normalize more differences between web clients.</li>
</ul>
</dd>
</dl>
</div>
<h3 class="subsection-title">Members</h3>
<dl>
<hr>
<dt class="name" id=".cordova_getCompassConstantly_lastId">
<h4 id=".cordova_getCompassConstantly_lastId"><span class="type-signature"><static, readonly> </span>cordova_getCompassConstantly_lastId<span class="type-signature"> :integer|null</span></h4>
</dt>
<dd>
<div class="description">
<p>Keeps the last watch ID that gets the compass heading constantly using the <a href="https://github.com/apache/cordova-plugin-device-orientation">Apache Cordova's Device Orientation plugin</a>. Used by the <a href="CB_Device.Orientation.html#.cordova_getCompassConstantly"><code>CB_Device.Orientation.cordova_getCompassConstantly</code></a> function.</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">integer</span>
|
<span class="param-type">null</span>
</li>
</ul>
<dl class="details">
<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
<dd class="tag-source">
<ul class="dummy">
<li>
<a href="CrossBase_device_CB_Device.js.html">CrossBase/device/CB_Device.js</a>,
<a href="CrossBase_device_CB_Device.js.html#sunlight-1-line-403">line 403</a>
</li>
</ul>
</dd>
</dl>
</dd>
</dl>
<h3 class="subsection-title">Methods</h3>
<dl>
<hr>
<dt>
<h4 class="name" id=".cordova_getCompass"><span class="type-signature"><static> </span>cordova_getCompass<span class="signature">(callbackOk, callbackError)</span><span class="type-signature"> → {undefined|false}</span></h4>
</dt>
<dd>
<div class="description">
<p>Gets the compass heading using the <a href="https://github.com/apache/cordova-plugin-device-orientation">Apache Cordova's Device Orientation plugin</a>. Uses "navigator.compass.getCurrentHeading" internally.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th style="width:12%; min-width:110px;">Name</th>
<th style="width:12%; min-width:110px;">Type</th>
<th class="last" style="min-width:310px;">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>callbackOk</code></td>
<td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<span class="param-type">function</span>
</td>
<td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The function that will be called when it succeeds getting the compass heading. Following the same rules as in <a href="https://github.com/apache/cordova-plugin-device-orientation">https://github.com/apache/cordova-plugin-device-orientation</a> ("navigator.compass.getCurrentHeading" function).</p></td>
</tr>
<tr>
<td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>callbackError</code></td>
<td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<span class="param-type">function</span>
</td>
<td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The function that will be called if there is any error getting the compass heading. Following the same rules as in <a href="https://github.com/apache/cordova-plugin-device-orientation">https://github.com/apache/cordova-plugin-device-orientation</a> ("navigator.compass.getCurrentHeading" function).</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
<dd class="tag-source">
<ul class="dummy">
<li>
<a href="CrossBase_device_CB_Device.js.html">CrossBase/device/CB_Device.js</a>,
<a href="CrossBase_device_CB_Device.js.html#sunlight-1-line-545">line 545</a>
</li>
</ul>
</dd>
<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
<dd class="tag-todo">
<ul>
<li>Add a function to normalize the event and call it automatically.</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Returns false in the case that the <a href="https://github.com/apache/cordova-plugin-device-orientation">Apache Cordova's Device Orientation plugin</a> is not supported or undefined otherwise.</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">undefined</span>
|
<span class="param-type">false</span>
</dd>
</dl>
</dd>
<hr>
<dt>
<h4 class="name" id=".cordova_getCompassConstantly"><span class="type-signature"><static> </span>cordova_getCompassConstantly<span class="signature">( [callbackOkOrId] [, callbackError] [, options])</span><span class="type-signature"> → {integer|undefined|false}</span></h4>
</dt>
<dd>
<div class="description">
<p>Starts or stops getting the compass heading constantly at a regular interval. Uses the <a href="https://github.com/apache/cordova-plugin-device-orientation">Apache Cordova's Device Orientation plugin</a> ("navigator.compass.watchHeading" and "navigator.compass.clearWatch" functions).</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th style="width:12%; min-width:110px;">Name</th>
<th style="width:12%; min-width:110px;">Type</th>
<th style="width:12%; min-width:110px;">Argument</th>
<th style="width:12%; min-width:110px;">Default</th>
<th class="last" style="min-width:310px;">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>callbackOkOrId</code></td>
<td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<span class="param-type">function</span>
|
<span class="param-type">integer</span>
</td>
<td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<optional><br>
</td>
<td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<a href="CB_Device.Orientation.html#.cordova_getCompassConstantly_lastId"><code>CB_Device.Orientation.cordova_getCompassConstantly_lastId</code></a>
</td>
<td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>In the case that we want to start getting the compass heading, use a function callback that will be called regularly when the compass heading is gotten successfully (using the "navigator.compass.watchHeading" function). To stop getting the compass heading, use the watch ID that we want to stop (using the "navigator.compass.clearWatch" function). Following the same rules as the first parameter of the "navigator.compass.watchHeading" function (when we want to start watching) or the first parameter of "navigator.compass.clearWatch" function (when we want to stop watching) described in <a href="https://github.com/apache/cordova-plugin-device-orientation">https://github.com/apache/cordova-plugin-device-orientation</a>.</p></td>
</tr>
<tr>
<td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>callbackError</code></td>
<td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<span class="param-type">function</span>
</td>
<td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<optional><br>
</td>
<td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
</td>
<td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Callback that will be called if there is any error getting the compass heading. Only used when we want to start getting the compass heading ("callbackOkOrId" is a function). Following the same rules as the second parameter of the "navigator.compass.watchHeading" function described in <a href="https://github.com/apache/cordova-plugin-device-orientation">https://github.com/apache/cordova-plugin-device-orientation</a>.</p></td>
</tr>
<tr>
<td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>options</code></td>
<td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<span class="param-type">Object</span>
</td>
<td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<optional><br>
</td>
<td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
</td>
<td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Object that represents the desired options. Only used when we want to start getting the compass heading ("callbackOkOrId" is a function). Following the same rules as the third parameter of the "navigator.compass.watchHeading" function described in <a href="https://github.com/apache/cordova-plugin-device-orientation">https://github.com/apache/cordova-plugin-device-orientation</a>.</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
<dd class="tag-source">
<ul class="dummy">
<li>
<a href="CrossBase_device_CB_Device.js.html">CrossBase/device/CB_Device.js</a>,
<a href="CrossBase_device_CB_Device.js.html#sunlight-1-line-562">line 562</a>
</li>
</ul>
</dd>
<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
<dd class="tag-todo">
<ul>
<li>Add a function to normalize the event and call it automatically.</li>
<li>Add parameters to keep old callbacks and options.</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Returns false in the case that <a href="https://github.com/apache/cordova-plugin-device-orientation">Apache Cordova's Device Orientation plugin</a> is not supported. In the case that we want to start getting the compass heading ("callbackOkOrId" is a function), it will return the watch ID that has been created. In the case that we want to stop getting the compass heading ("callbackOkOrId" is a watch ID), it will return undefined.</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">integer</span>
|
<span class="param-type">undefined</span>
|
<span class="param-type">false</span>
</dd>
</dl>
</dd>
<hr>
<dt>
<h4 class="name" id=".cordova_getCompassConstantlyDisable"><span class="type-signature"><static> </span>cordova_getCompassConstantlyDisable<span class="signature">( [id])</span><span class="type-signature"> → {undefined|false}</span></h4>
</dt>
<dd>
<div class="description">
<p>Stops getting the compass heading constantly at a regular interval. Uses the <a href="https://github.com/apache/cordova-plugin-device-orientation">Apache Cordova's Device Orientation plugin</a> ("navigator.compass.clearWatch" function).</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th style="width:12%; min-width:110px;">Name</th>
<th style="width:12%; min-width:110px;">Type</th>
<th style="width:12%; min-width:110px;">Argument</th>
<th style="width:12%; min-width:110px;">Default</th>
<th class="last" style="min-width:310px;">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>id</code></td>
<td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<span class="param-type">integer</span>
</td>
<td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<optional><br>
</td>
<td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<a href="CB_Device.Orientation.html#.cordova_getCompassConstantly_lastId"><code>CB_Device.Orientation.cordova_getCompassConstantly_lastId</code></a>
</td>
<td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The watch ID that we want to stop. Following the same rules as the first parameter of the "navigator.compass.clearWatch" function described in <a href="https://github.com/apache/cordova-plugin-device-orientation">https://github.com/apache/cordova-plugin-device-orientation</a>.</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
<dd class="tag-source">
<ul class="dummy">
<li>
<a href="CrossBase_device_CB_Device.js.html">CrossBase/device/CB_Device.js</a>,
<a href="CrossBase_device_CB_Device.js.html#sunlight-1-line-591">line 591</a>
</li>
</ul>
</dd>
<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
<dd class="tag-todo">
<ul>
<li>Add parameters to keep old callbacks and options.</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Returns false in the case that <a href="https://github.com/apache/cordova-plugin-device-orientation">Apache Cordova's Device Orientation plugin</a> is not supported or undefined otherwise.</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">undefined</span>
|
<span class="param-type">false</span>
</dd>
</dl>
</dd>
<hr>
<dt>
<h4 class="name" id=".cordova_isCompassSupported"><span class="type-signature"><static> </span>cordova_isCompassSupported<span class="signature">()</span><span class="type-signature"> → {boolean}</span></h4>
</dt>
<dd>
<div class="description">
<p>Tells whether the <a href="https://github.com/apache/cordova-plugin-device-orientation">Apache Cordova's Device Orientation plugin</a> is available or not.</p>
</div>
<dl class="details">
<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
<dd class="tag-source">
<ul class="dummy">
<li>
<a href="CrossBase_device_CB_Device.js.html">CrossBase/device/CB_Device.js</a>,
<a href="CrossBase_device_CB_Device.js.html#sunlight-1-line-531">line 531</a>
</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
</dd>
<hr>
<dt>
<h4 class="name" id=".isCompassNeedsCalibrationSupported"><span class="type-signature"><static> </span>isCompassNeedsCalibrationSupported<span class="signature">()</span><span class="type-signature"> → {boolean}</span></h4>
</dt>
<dd>
<div class="description">
<p>Tells whether the <a href="https://w3c.github.io/deviceorientation/spec-source-orientation.html#compassneedscalibration">Compass Needs Calibration Event</a> (used by the <a href="https://developer.mozilla.org/docs/Web/API/Detecting_device_orientation">Device Orientation API</a> or compatible one) is supported or not.</p>
</div>
<dl class="details">
<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
<dd class="tag-source">
<ul class="dummy">
<li>
<a href="CrossBase_device_CB_Device.js.html">CrossBase/device/CB_Device.js</a>,
<a href="CrossBase_device_CB_Device.js.html#sunlight-1-line-505">line 505</a>
</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
</dd>
<hr>
<dt>
<h4 class="name" id=".isMozOrientationSupported"><span class="type-signature"><static> </span>isMozOrientationSupported<span class="signature">()</span><span class="type-signature"> → {boolean}</span></h4>
</dt>
<dd>
<div class="description">
<p>Tells whether the <a href="https://developer.mozilla.org/docs/Web/Events/MozOrientation">MozOrientation API</a> is supported or not.</p>
</div>
<dl class="details">
<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
<dd class="tag-source">
<ul class="dummy">
<li>
<a href="CrossBase_device_CB_Device.js.html">CrossBase/device/CB_Device.js</a>,
<a href="CrossBase_device_CB_Device.js.html#sunlight-1-line-423">line 423</a>
</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
</dd>
<hr>
<dt>
<h4 class="name" id=".isSupported"><span class="type-signature"><static> </span>isSupported<span class="signature">()</span><span class="type-signature"> → {boolean}</span></h4>
</dt>
<dd>
<div class="description">
<p>Tells whether the <a href="https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent">Device Orientation Event</a> (used by the <a href="https://developer.mozilla.org/docs/Web/API/Detecting_device_orientation">Device Orientation API</a> or compatible one) is supported or not.</p>
</div>
<dl class="details">
<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
<dd class="tag-source">
<ul class="dummy">
<li>
<a href="CrossBase_device_CB_Device.js.html">CrossBase/device/CB_Device.js</a>,
<a href="CrossBase_device_CB_Device.js.html#sunlight-1-line-412">line 412</a>
</li>
</ul>
</dd>
<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
<dd class="tag-todo">
<ul>
<li>Think about using the "ondeviceorientationabsolute" event.</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
</dd>
<hr>
<dt>
<h4 class="name" id=".normalizeEvent"><span class="type-signature"><static> </span>normalizeEvent<span class="signature">(e, eventName)</span><span class="type-signature"> → {Event}</span></h4>
</dt>
<dd>
<div class="description">
<p>Normalizes the data gotten from the <a href="https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent">Device Orientation Event</a> produced by different clients to try to match the <a href="https://developer.mozilla.org/docs/Web/API/Detecting_device_orientation">Device Orientation API</a> and follow always the same rules as much as possible.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th style="width:12%; min-width:110px;">Name</th>
<th style="width:12%; min-width:110px;">Type</th>
<th class="last" style="min-width:310px;">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>e</code></td>
<td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<span class="param-type">Event</span>
</td>
<td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The event object that we want to normalize.</p></td>
</tr>
<tr>
<td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>eventName</code></td>
<td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<span class="param-type">'deviceorientation'</span>
|
<span class="param-type">'MozOrientation'</span>
</td>
<td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The name of the event that we want to normalize. Case sensitive.</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
<dd class="tag-source">
<ul class="dummy">
<li>
<a href="CrossBase_device_CB_Device.js.html">CrossBase/device/CB_Device.js</a>,
<a href="CrossBase_device_CB_Device.js.html#sunlight-1-line-477">line 477</a>
</li>
</ul>
</dd>
<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
<dd class="tag-todo">
<ul>
<li>Think about using the "deviceorientationabsolute" event.</li>
<li>Normalize more differences between web clients.</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Returns the given event object again but normalized (if possible).</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Event</span>
</dd>
</dl>
</dd>
<hr>
<dt>
<h4 class="name" id=".onChange"><span class="type-signature"><static> </span>onChange<span class="signature">(eventFunction [, keepOldFunction] [, useCapture])</span><span class="type-signature"> → {undefined|false}</span></h4>
</dt>
<dd>
<div class="description">
<p>Sets a function to execute for the <a href="https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent">Device Orientation Event</a> (used by the <a href="https://developer.mozilla.org/docs/Web/API/Detecting_device_orientation">Device Orientation API</a> or compatible one) or removes it. Falls back to the <a href="https://developer.mozilla.org/docs/Web/Events/MozOrientation">MozOrientation API</a> if possible.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th style="width:12%; min-width:110px;">Name</th>
<th style="width:12%; min-width:110px;">Type</th>
<th style="width:12%; min-width:110px;">Argument</th>
<th style="width:12%; min-width:110px;">Default</th>
<th class="last" style="min-width:310px;">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>eventFunction</code></td>
<td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<span class="param-type">function</span>
|
<span class="param-type">null</span>
</td>
<td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
</td>
<td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
</td>
<td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>The function that will be called when the event is fired. The event object received will already be normalized by the <a href="CB_Device.Orientation.html#.normalizeEvent"><code>CB_Device.Orientation.normalizeEvent</code></a> function automatically. Following the same rules as in <a href="https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent">https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent</a>. If a null value is used, the event will be removed.</p></td>
</tr>
<tr>
<td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>keepOldFunction</code></td>
<td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<span class="param-type">boolean</span>
</td>
<td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<optional><br>
</td>
<td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
true
</td>
<td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Defines whether we want to keep any possible previous event listener or not.</p></td>
</tr>
<tr>
<td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>useCapture</code></td>
<td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<span class="param-type">float</span>
</td>
<td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<optional><br>
</td>
<td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
false
</td>
<td class="description last" style="min-width:310px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><p>Defines whether the event we want to add will use capture or not. This parameter will be effective only if the current client supports the <a href="https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener">addEventListener</a> method and will be used as its third parameter.</p></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source method-doc-label method-doc-details-label">Source:</dt>
<dd class="tag-source">
<ul class="dummy">
<li>
<a href="CrossBase_device_CB_Device.js.html">CrossBase/device/CB_Device.js</a>,
<a href="CrossBase_device_CB_Device.js.html#sunlight-1-line-438">line 438</a>
</li>
</ul>
</dd>
<dt class="tag-todo method-doc-label method-doc-details-label">To Do:</dt>
<dd class="tag-todo">
<ul>
<li>Think about using the "deviceorientationabsolute" event.</li>
</ul>
</dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
<p>Returns false in the case that neither the <a href="https://developer.mozilla.org/docs/Web/API/Detecting_device_orientation">Device Orientation API</a> (or compatible one) nor the <a href="https://developer.mozilla.org/docs/Web/Events/MozOrientation">MozOrientation API</a> are supported or undefined otherwise.</p>
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">undefined</span>
|
<span class="param-type">false</span>
</dd>
</dl>
</dd>
<hr>
<dt>
<h4 class="name" id=".onCompassNeedsCalibration"><span class="type-signature"><static> </span>onCompassNeedsCalibration<span class="signature">(eventFunction [, keepOldFunction] [, useCapture])</span><span class="type-signature"> → {undefined|false}</span></h4>
</dt>
<dd>
<div class="description">
<p>Sets a function to execute for the <a href="https://w3c.github.io/deviceorientation/spec-source-orientation.html#compassneedscalibration">Compass Needs Calibration Event</a> (used by the <a href="https://developer.mozilla.org/docs/Web/API/Detecting_device_orientation">Device Orientation API</a> or compatible one) or removes it.</p>
</div>
<h5>Parameters:</h5>
<table class="params table table-striped">
<thead>
<tr>
<th style="width:12%; min-width:110px;">Name</th>
<th style="width:12%; min-width:110px;">Type</th>
<th style="width:12%; min-width:110px;">Argument</th>
<th style="width:12%; min-width:110px;">Default</th>
<th class="last" style="min-width:310px;">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;"><code>eventFunction</code></td>
<td class="type" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
<span class="param-type">function</span>
|
<span class="param-type">null</span>
</td>
<td class="attributes" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
</td>
<td class="default" style="width:12%; min-width:110px; overflow-wrap:break-word; word-wrap:break-word; word-break:break-word; line-break:strict; hyphens:none; -webkit-hyphens:none; -moz-hyphens:none;">
</td>
<td class="description last" style="min-width:310px; overflow-wrap:break-w