JavaScript.xml 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <class name="JavaScript" inherits="Object" version="3.4">
  3. <brief_description>
  4. Singleton that connects the engine with the browser's JavaScript context in HTML5 export.
  5. </brief_description>
  6. <description>
  7. 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.
  8. [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/3.3/development/compiling/compiling_for_web.html]Compiling for the Web[/url] in the documentation for more information.
  9. </description>
  10. <tutorials>
  11. <link>https://docs.godotengine.org/en/3.3/getting_started/workflow/export/exporting_for_web.html#calling-javascript-from-script</link>
  12. </tutorials>
  13. <methods>
  14. <method name="create_callback">
  15. <return type="JavaScriptObject">
  16. </return>
  17. <argument index="0" name="object" type="Object">
  18. </argument>
  19. <argument index="1" name="method" type="String">
  20. </argument>
  21. <description>
  22. Creates a reference to a script function 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.
  23. </description>
  24. </method>
  25. <method name="create_object" qualifiers="vararg">
  26. <return type="Variant">
  27. </return>
  28. <argument index="0" name="object" type="String">
  29. </argument>
  30. <description>
  31. 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.
  32. </description>
  33. </method>
  34. <method name="eval">
  35. <return type="Variant">
  36. </return>
  37. <argument index="0" name="code" type="String">
  38. </argument>
  39. <argument index="1" name="use_global_execution_context" type="bool" default="false">
  40. </argument>
  41. <description>
  42. 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].
  43. 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.
  44. </description>
  45. </method>
  46. <method name="get_interface">
  47. <return type="JavaScriptObject">
  48. </return>
  49. <argument index="0" name="interface" type="String">
  50. </argument>
  51. <description>
  52. 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.
  53. </description>
  54. </method>
  55. </methods>
  56. <constants>
  57. </constants>
  58. </class>