summaryrefslogtreecommitdiff
path: root/doc/classes/JavaScript.xml
blob: e6d74eeb21eabe8dbe98cd4a679f010286e0301e (plain)
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
<?xml version="1.0" encoding="UTF-8" ?>
<class name="JavaScript" inherits="Object" version="4.0">
	<brief_description>
		Singleton that connects the engine with the browser's JavaScript context in HTML5 export.
	</brief_description>
	<description>
		The JavaScript singleton is implemented only in the HTML5 export. It's used to access the browser's JavaScript context. This allows interaction with embedding pages or calling third-party JavaScript APIs.
		[b]Note:[/b] This singleton can be disabled at build-time to improve security. By default, the JavaScript singleton is enabled. Official export templates also have the JavaScript singleton enabled. See [url=https://docs.godotengine.org/en/latest/development/compiling/compiling_for_web.html]Compiling for the Web[/url] in the documentation for more information.
	</description>
	<tutorials>
		<link title="Exporting for the Web: Calling JavaScript from script">https://docs.godotengine.org/en/latest/getting_started/workflow/export/exporting_for_web.html#calling-javascript-from-script</link>
	</tutorials>
	<methods>
		<method name="create_callback">
			<return type="JavaScriptObject">
			</return>
			<argument index="0" name="callable" type="Callable">
			</argument>
			<description>
				Creates a reference to a [Callable] that can be used as a callback by JavaScript. The reference must be kept until the callback happens, or it won't be called at all. See [JavaScriptObject] for usage.
			</description>
		</method>
		<method name="create_object" qualifiers="vararg">
			<return type="Variant">
			</return>
			<argument index="0" name="object" type="String">
			</argument>
			<description>
				Creates a new JavaScript object using the [code]new[/code] constructor. The [code]object[/code] must a valid property of the JavaScript [code]window[/code]. See [JavaScriptObject] for usage.
			</description>
		</method>
		<method name="eval">
			<return type="Variant">
			</return>
			<argument index="0" name="code" type="String">
			</argument>
			<argument index="1" name="use_global_execution_context" type="bool" default="false">
			</argument>
			<description>
				Execute the string [code]code[/code] as JavaScript code within the browser window. This is a call to the actual global JavaScript function [code]eval()[/code].
				If [code]use_global_execution_context[/code] is [code]true[/code], the code will be evaluated in the global execution context. Otherwise, it is evaluated in the execution context of a function within the engine's runtime environment.
			</description>
		</method>
		<method name="get_interface">
			<return type="JavaScriptObject">
			</return>
			<argument index="0" name="interface" type="String">
			</argument>
			<description>
				Returns an interface to a JavaScript object that can be used by scripts. The [code]interface[/code] must be a valid property of the JavaScript [code]window[/code]. The callback must accept a single [Array] argument, which will contain the JavaScript [code]arguments[/code]. See [JavaScriptObject] for usage.
			</description>
		</method>
	</methods>
	<constants>
	</constants>
</class>