description::
Browser-Javascript is the-programing-language of webpages, the-Javascript which the-web-browsers know, the so called client-side-Javascript.
name::
* McsEngl.McsTchInf000011.last.html//dirTchInf//dirMcs!⇒lagJsbr,
* McsEngl.dirMcs/dirTchInf/McsTchInf000011.last.html!⇒lagJsbr,
* McsEngl.Javascript.browser!⇒lagJsbr,
* McsEngl.JavascriptBrowser!⇒lagJsbr,
* McsEngl.Jsbr!⇒lagJsbr,
* McsEngl.Ljb!⇒lagJsbr, {2019-03-05},
* McsEngl.browser-Javascript-language!⇒lagJsbr,
* McsEngl.browser-Javascript-programing-language!⇒lagJsbr,
* McsEngl.browser-js-(Javascript-language-known-by-browsers)!⇒lagJsbr,
* McsEngl.browserJS!⇒lagJsbr, {2017-10-29},
* McsEngl.browserjs!⇒lagJsbr, {2017-10-22},
* McsEngl.client-side-Javascript!⇒lagJsbr,
* McsEngl.front-end-Javascript!⇒lagJsbr,
* McsEngl.lagJsb!⇒lagJsbr, {2019-07-04},
* McsEngl.lagJsbr, {2021-03-23},
* McsEngl.lagJsbr!=McsTchInf000011,
* McsEngl.lagJsbr!=browser-Javascript-language,
* McsEngl.language.Javascript.browser!⇒lagJsbr,
* McsEngl.language.progaming.Javascript.browser!⇒lagJsbr,
* McsEngl.programing-language.Javascript.browser!⇒lagJsbr,
* LngJsb,
* LangJsb,
* Jsb,
description::
lagJsbr-archetype is the-information the-ljb maps.
lagJsbr-archetype is mainly HML and CSS code with which webpages are-created as well numbers and human-text.
name::
* McsEngl.lagJsbr'01_archetype,
* McsEngl.lagJsbr'archetype,
* McsEngl.lagJsbr'archetype-information,
* McsEngl.lagJsbr'archo,
* McsEngl.lagJsbr'arc,
generic-chain::
* Jsgn-archetype,
description::
An-archetype is an-INSTANCE of communication.
The-set of all archetypes is the-domain of the-language.
name::
* McsEngl.lagJsbr'domain,
* McsEngl.lagJsbr'domainIn,
generic::
* Jsgn-algorithm,
name::
* McsEngl.lagJsbr'02_algorithm!⇒Jsbralgo,
* McsEngl.lagJsbr'algorithm!⇒Jsbralgo,
* McsEngl.Jsbralgo, {2020-05-05}
* McsEngl.lagJsbr'document!⇒Jsbralgo,
* McsEngl.lagJsbr'algo!⇒Jsbralgo,
* McsEngl.lagJsbr'algorithm!⇒Jsbralgo,
* McsEngl.lagJsbr'doc!⇒Jsbralgo,
* McsEngl.lagJsbr'model!⇒Jsbralgo,
description::
"Εverything flows", the-language and the-browsers.
We need to know, if the-algorithm we constructed is supported by the-browser we use to execute it.
name::
* McsEngl.lagJsbr'browser-compatibility,
* McsEngl.lagJsbr'browser-support,
* McsEngl.Jsbralgo'browser-support,
generic::
* Jsgn-unit,
name::
* McsEngl.Jsbralgo'unit,
* McsEngl.lagJsbr'unit-node,
generic::
* Jsgn-word,
name::
* McsEngl.Jsbralgo'word,
* McsEngl.lagJsbr'word-node,
generic::
* Jsgn-semantic-unit,
name::
* McsEngl.Jsbralgo'Sut!⇒Jsbrsut,
* McsEngl.Jsbralgo'semantic-unit,!⇒Jsbrsut
* McsEngl.Jsbrsut,
* McsEngl.lagJsbr'semantic-unit!⇒Jsbrsut,
* McsEngl.lagJsbr'unit.semantic!⇒Jsbrsut,
* McsEngl.lagJsbr'Sut!⇒Jsbrsut,
* McsEngl.lagJsbr'Sunit!⇒Jsbrsut,
* McsEngl.lagJsbr'untSmc!⇒Jsbrsut,
Whole-chain::
=== (syntax-wptree)
* lagJsbr-phrase,
* lagJsbr-sentence,
* lagJsbr-library,
* lagJsbr-program,
=== (API-wptree)
* another semantic-unit,
...
* window,
Specific::
Jsbr uses only 11 semantic-units to create an-algorithm:
01) a - Array,
02) b - Boolean,
03) f - Function,
04) l - nuLl,
05) n - Number,
06) o - Object,
07) r - Regexp,
08) s - String,
09) u - Undefined,
10) v - name-Value-pair,
11) x - miXed,
specific.alphabetically::
* array--semantic-unit,
* boolean--semantic-unit,
* custom--semantic-unit,
* customNo--semantic-unit,
* function--semantic-unit,
* name-semantic-unit,
* nameNo-semantic-unit,
* name-value-pair-mixed--semantic-unit,
* name-value-pair-mixedNo--semantic-unit,
* name-value-pair-No--semantic-unit,
* null--semantic-unit,
* number--semantic-unit,
* object--semantic-unit,
* objectNo--semantic-unit,
* regexp--semantic-unit,
* string--semantic-unit,
* undefined--semantic-unit,
generic::
* Jsgn-array,
name::
* McsEngl.lagJsbr'array!⇒lagJsgn-a,
* McsEngl.lagJsbr'a!⇒lagJsgn-a,
* McsEngl.Jsbr-a!⇒lagJsgn-a,
generic::
* Jsgn-boolean,
name::
* McsEngl.lagJsbr'boolean!⇒lagJsgn-b,
* McsEngl.lagJsbr'b!⇒lagJsgn-b,
* McsEngl.Jsbr-b!⇒lagJsgn-b,
generic::
* Jsgn-function,
name::
* McsEngl.lagJsbr'function,
* McsEngl.lagJsbr'f,
* McsEngl.lagJsbr'f'(browser-js-function),
* McsEngl.lagJsbr'Sut.function,
specific.alphabetically::
* constructor-function,
* custom-function,
* customNo-function,
* method-function,
* methodNo-function,
* object-returning-function,
* operator-function,
* self-executing-function,
Specific.BUILTIN.Chrome.50:
generic::
* Jsgn-null,
generic::
* Jsgn-number,
generic::
* Jsgn-object,
name::
* McsEngl.Jsbro,
* McsEngl.lagJsbr'o-(Browser-js-object)!⇒Jsbro,
* McsEngl.lagJsbr'object!⇒Jsbro,
specific.alphabetically::
* constructor-object,
* constructorNo-object,
* custom-object,
* customNo-object,
* most-whole-object (global),
* first-class-object,
* first-class-no-object,
* literal-object,
* literalNo-object,
* Object.prototype,
generic::
* Jsgn-regexp,
name::
* McsEngl.lagJsbr'r-(Browser-js-regexp),
* McsEngl.lagJsbr'regexp,
generic::
* Jsgn-string,
name::
* McsEngl.lagJsbr's-(Browser-js-string),
* McsEngl.lagJsbr'string,
generic::
* Jsgn-undefined,
name::
* McsEngl.lagJsbr'u-(Browser-js-undefined),
* McsEngl.lagJsbr'undefined,
generic::
* Jsgn-name-value-pair,
name::
* McsEngl.lagJsbr'name-value-pair,
* McsEngl.lagJsbr'nvp-(name-value-pair),
* McsEngl.lagJsbr'variable,
generic::
* Jsgn-mixed-semantic-unit,
name::
* McsEngl.lagJsbr'mixed,
* McsEngl.lagJsbr'x-(Mixed-sut),
description::
"ES Modules is the ECMAScript standard for working with modules. While Node.js has been using the CommonJS standard since years, the browser never had a module system, as every major decision such as a module system must be first standardized by ECMAScript and then implemented.
... A module is a JavaScript file that exports one or more values (objects, functions or variables), using the export keyword."
[https://flaviocopes.com/es-modules/]
name::
* McsEngl.ECMAScript-module!⇒Jsesm,
* McsEngl.ES-module!⇒Jsesm,
* McsEngl.ESM!=ECMAScript-module,
* McsEngl.Jsbrm!⇒Jsesm,
* McsEngl.Jsesm,
* McsEngl.Jsesm!=ECMAScript-module,
* McsEngl.browser-module!⇒Jsesm,
* McsEngl.lagJsbr'module!⇒Jsesm,
* McsEngl.lagJsbr'm!⇒Jsesm,
* McsEngl.lagJsbr'Sut.module!⇒Jsesm,
* McsEngl.module.Jsbr!⇒Jsesm,
description::
"Have a top-level scope that is not the global scope"
[{2021-04-04} https://humanwhocodes.com/blog/2016/04/es6-module-loading-more-complicated-than-you-think/]
===
· to acess global-scope: window.fMine = function(){}
description::
· any semantic-unit part of it.
name::
* McsEngl.Jsesm'member!⇒Jsbrmmbr,
* McsEngl.Jsbrmmbr,
* McsEngl.Jsbrmmbr!=member-of-Jsbr-module,
description::
· a-member exported to another module.
name::
* McsEngl.Jsesm'export-member,
* McsEngl.Jsbrmmbr.export,
description::
· an-export can-imported in another module:
export function fMisc(){..}
import fMisc from './moduleIn.js'
· default-export can-import with any name:
export default function(){..}
import fName from './moduleIn.js'
description::
· ONE per module.
// Default exports
export default expression;
export default function (…) { … } // also class, function*
export default function name1(…) { … } // also class, function*
export { name1 as default, … };
// export feature declared earlier as default
export { myFunction as default };
// export individual features as default
export default function () { ... }
export default class { .. }
// each export overwrites the previous one
[https://developer.mozilla.org/en-US/docs/web/javascript/reference/statements/export]
name::
* McsEngl.Jsesm'default-export,
* McsEngl.Jsesm'export.default,
description::
· ZERO or MORE per module.
// Exporting individual features
export let name1, name2, …, nameN; // also var, const
export let name1 = …, name2 = …, …, nameN; // also var, const
export function functionName(){...}
export class ClassName {...}
// Export list
export { name1, name2, …, nameN };
// Renaming exports
export { variable1 as name1, variable2 as name2, …, nameN };
// Exporting destructured assignments with renaming
export const { name1, name2: bar } = o;
// Aggregating modules
export * from …; // does not set the default export
export * as name1 from …; // Draft ECMAScript® 2O21
export { name1, name2, …, nameN } from …;
export { import1 as name1, import2 as name2, …, nameN } from …;
export { default, … } from …;
// export features declared earlier
export { myFunction, myVariable };
// export individual features (can export var, let,
// const, function, class)
export let myVariable = Math.sqrt(2);
export function myFunction() { ... };
name::
* McsEngl.Jsesm'named-export,
* McsEngl.Jsesm'export.named,
description::
· a-member imported from another module.
===
"Imports and exports must be at the top level
...
Imports are hoisted
Module imports are hoisted (internally moved to the beginning of the current scope). Therefore, it doesn’t matter where you mention them in a module and the following code works without any problems:
foo();
import { foo } from 'my_module';"
[https://exploringjs.com/es6/ch_modules.html]
name::
* McsEngl.Jsesm'import-member,
* McsEngl.Jsbrmmbr.import,
description::
· the-statement that imports members from other modules:
import { name, reportArea } from './modules/square.js'
===
"If you want to, you can also import the whole module and refer to its named exports via property notation:
//------ main.js ------
import * as lib from 'lib';
console.log(lib.square(11)); // 121
console.log(lib.diag(4, 3)); // 5"
[https://exploringjs.com/es6/ch_modules.html#_named-exports-several-per-module]
description::
· the-part of import-statement that denotes the-imported-module, eg './modules/square.js'
import {shout} from './lib.mjs';
import {shout} from '../lib.mjs';
import {shout} from '/modules/lib.mjs';
import {shout} from 'https://simple.example/modules/lib.mjs';
For now, module specifiers must be full URLs, or relative URLs starting with /, ./, or ../.
[https://v8.dev/features/modules#specifiers]
name::
* McsEngl.Jsesm'import-specifier,
* McsEngl.Jsesm'module-specifier,
description::
import _ from './lodash.cjs';
const {shuffle} = _;
description::
· with script-element: <script type="module" src="main.js"></script>
description::
· in browser, no matter because type="module"
denotes the-module.
· on other platforms '.mjs' makes crystal clear the-use of modules.
[https://v8.dev/features/modules#mjs]
description::
"Modules are singletons. Even if a module is imported multiple times, only a single “instance” of it exists."
[https://exploringjs.com/es6/ch_modules.html#sec_modules-in-javascript]
description::
"ES6 modules are stored in files. There is exactly one module per file and one file per module."
[https://exploringjs.com/es6/ch_modules.html#sec_overview-modules]
description::
· modules have strict-mode enabled by default.
· they have a-lexical top-level scope, their members are not global.
· this
within modules does not refer to the global this, and instead is undefined. (Use globalThis if you need access to the global this.)
· Top-level await is available in modules, but not in classic scripts.
"Because of these differences, the same JavaScript code might behave differently when treated as a module vs. a classic script. As such, the JavaScript runtime needs to know which scripts are modules."
[https://v8.dev/features/modules]
attribute | classic-script | module |
mode | non-strict | strict |
execution | synchronously | asynchronously |
top-level sunits | global | local |
top-level this | window | undefined |
name::
* McsEngl.Jsesm'relation-to-classic-script,
* McsEngl.classic-script'relation-to-Jsesm,
name::
* McsEngl.Jsesm'resource,
addressWpg::
* {2018-06-03} Flavio-Copes, Introduction to ES Modules, https://flaviocopes.com/es-modules/,
* https://hacks.mozilla.org/2018/03/es-modules-a-cartoon-deep-dive/,
* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules,
* https://v8.dev/features/modules,
* https://developers.google.com/web/fundamentals/primers/modules, Addy-Osmani, Mathias-Bynens, Using JavaScript modules on the web,
* https://exploringjs.com/es6/ch_modules.html, Axel-Rauschmayer,
description::
"Each module is a piece of code that is executed once it is loaded."
[https://exploringjs.com/es6/ch_modules.html#sec_modules-in-javascript]
description::
* whole-part-tree-of-ljb-native-API,
* generic-specific-tree-of-ljb-native-API,
name::
* McsEngl.API.browserjs!⇒JsbrAPI,
* McsEngl.API-JavascriptBrowser!⇒JsbrAPI,
* McsEngl.JsbrAPI,
* McsEngl.lagJsbr'API!⇒JsbrAPI,
generic::
* Jsgn-API,
description::
· window
is an-objectof Window
function.
· it is the-most-whole object of the-browsers, the-global-object, it includes all other language constructs.
· it is the-ROOT of the-API-whole-part-tree.
name::
* McsEngl.Jsbrmwo,
* McsEngl.Jsbrmwo!=most-whole-object--of-browser-javascript,
* McsEngl.lagJsbr'global-object!⇒Jsbrmwo,
* McsEngl.lagJsbr'most-whole-object!⇒Jsbrmwo,
* McsEngl.lagJsbr'mwo!⇒Jsbrmwo,
* McsEngl.lagJsbr'window-object!⇒Jsbrmwo,
* McsEngl.JsbrAPI'window-object!⇒Jsbrmwo,
* McsEngl.lagJsbr'global-object!⇒Jsbrmwo,
* McsEngl.lagJsbr'most-whole-object!⇒Jsbrmwo,
* McsEngl.lagJsbr'window-object!⇒Jsbrmwo,
* McsEngl.most-whole-object--JavascriptBrowser!⇒Jsbrmwo,
* McsEngl.mwo//lagJsbr!⇒Jsbrmwo,
* McsEngl.window!⇒Jsbrmwo,
generic-chain::
* Window.prototype (Window.prototype.isPrototypeOf(window) // true
),
* WindowProperties.prototype (internal in Chrome)
* EventTarget.prototype (Window.prototype.__proto__.__proto__ === EventTarget.prototype // true
),
* Object.prototype,
description::
· any member of the-window-object-(mwo).
name::
* McsEngl.Jsbrglobal,
* McsEngl.Jsbrmwo'member!⇒Jsbrglobal,
description::
An-API is structured (from one point of view) in a-whole-part tree.
window
is the-most-whole-object, the-root, the-global-object, of the-ljb native-API.
The-whole-part-structure mechanism of Jsbr is very primitive.
All the-code is-imported in the-global-object with the-script-html-element, creating a-soup prone to errors.
In contrast, Jsnd uses the-module-mechanism to create manageable whole-part-structures.
name::
* McsEngl.JsbrApi'whole-part-tree,
* McsEngl.Jsbrmwo'tree,
* McsEngl.JsbrAPI'whole-part-tree,
* McsEngl.lagJsbr'whole-part-tree-of-API,
* McsEngl.lagJsbr'wpt-(whole-part-tree-of-API),
* McsEngl.whole-part-tree-of-API//lagJsbr,
Chrome.50.2016-05-09 native-API-whole-part-tree:
(≅700 semantic-units)
description::
· Object.prototype is the-most-generic-object of lagJsbr as-well-as lagJsnd.
name::
* McsEngl.Jsbrmgo,
* McsEngl.lagJsbr'most-generic-object!⇒Jsbrmgo,
* McsEngl.lagJsbr'Mgo!⇒Jsbrmgo,
* McsEngl.lagJsbr'Object.prototype!⇒Jsbrmgo,
* McsEngl.JsbrAPI'most-generic-object!⇒Jsbrmgo,
* McsEngl.JsbrAPI'Mgo!⇒Jsbrmgo,
* McsEngl.JsbrAPI'Object.prototype!⇒Jsbrmgo,
* McsEngl.lagJsbr'most-generic-object!⇒Jsbrmgo,
* McsEngl.lagJsbr'Mgo!⇒Jsbrmgo,
* McsEngl.lagJsbr'Object.prototype!⇒Jsbrmgo,
* McsEngl.most-generic-object--JavascriptBrowser!⇒Jsbrmgo,
generic::
* Javascript--most-generic-object,
description::
This is the inheritance tree (= specifics inherit the-members of generics) of the-objects of the-language.
The-Object.prototype is the-most-generic-object in the-API's-generic-specific-tree.
name::
* McsEngl.JsbrAPI'generic-specific-tree,
* McsEngl.lagJsbr'generic-specific-tree-of-API,
* McsEngl.lagJsbr'object-generic-specific-tree,
* McsEngl.lagJsbr'object-hierarchy,
* McsEngl.lagJsbr'gst-(generic-specific-tree-of-API),
Generic-Specific-Tree of ljb-native-API:
Math.__proto__ === Object.prototype //true
)generic::
* Jsgn-native-API,
name::
* McsEngl.lagJsbr'API.native,
* McsEngl.lagJsbr'native-API,
name::
* McsEngl.Javascript'storage-API.browser,
* McsEngl.lagJsbr'API.storage,
* McsEngl.lagJsbr'storage-API,
addressWpg::
* {2018-06-12} Alexander-Zlatkov, How JavaScript works: Storage engines + how to choose the proper storage API, https://blog.sessionstack.com/,
generic::
* Jsgn-phrase,
name::
* McsEngl.Jsbralgo'phrase,
* McsEngl.lagJsbr'phrase,
* McsEngl.lagJsbr'semantic-unit-structure,
generic::
* Jsgn-sentence,
name::
* McsEngl.Jsbralgo'sentence,
* McsEngl.lagJsbr'sentence,
* McsEngl.lagJsbr'statement,
description::
Algo-root-tree is the OUTERMOST TREE of an-algorithm, in a-webpage.
name::
* McsEngl.Jsbralgo'attMisc,
description::
· lagJsbr-code is any part of an-lagJsbr-code-doc.
description::
The-syntax-tree of an-ljb-algo is part of the-HTML-file of a-webpage.
[HmnSgm.2017-10-26]
name::
* McsEngl.Jsbralgo'syntax-tree,
* McsEngl.lagJsbr'syntax-tree,
* McsEngl.lagJsbr'syntax-tree,
generic::
* Javascript--syntax-tree,
name::
* McsEngl.Jsbralgo'whole-part-tree,
name::
* McsEngl.Jsbralgo'generic-specific-tree,
attribute-tree-of-Jsbralgo::
* ,
specific-of-Jsbralgo::
With the-language programers create many algorithms.
The-quantity depends on the-archetypes known, and the-semantic-units of the-language.
* Browser-management,
* Event-management,
* HML-management,
* math-management,
* time-management,
description::
· methods a-user uses to input|output info.
name::
* McsEngl.Jsbralgo.input-output-of-user,
* McsEngl.lagJsbr.input-output-of-user,
description::
var sName = prompt("Enter your name: ");
alert("Your name is " + sName);
name::
* McsEngl.lagJsbr'prompt,
* McsEngl.prompt.Jsbrmwo,
* McsEngl.Jsbrmwo/prompt,
description::
· displays a-dialogue-box with "OK" and "Cancel" buttons.
bC = confirm("Are you sure you want to send a payment?")
if (bC) {
alert("Payment sent!")
} else {
alert("Payment cancelled!")
}
name::
* McsEngl.confirm.Jsbrmwo,
* McsEngl.lagJsbr'confirm,
* McsEngl.Jsbrmwo/confirm,
description::
alert("my name is Synagonism");
name::
* McsEngl.alert.Jsbrmwo,
* McsEngl.lagJsbr'alert,
* McsEngl.Jsbrmwo/alert,
generic::
* Jsgn-library,
name::
* McsEngl.Jsbralgo.library!⇒Jsbrlib,
* McsEngl.Jsbrlib,
* McsEngl.lagJsbr'lbr-(library)!⇒Jsbrlib,
* McsEngl.lagJsbr'library!⇒Jsbrlib,
* McsEngl.lagJsbr'framework!⇒Jsbrlib,
* McsEngl.lagJsbr'plugin!⇒Jsbrlib,
* McsEngl.lagJsbr'script!⇒Jsbrlib,
description::
To add a-library in your code, to use its semantic-units (its API):
1. Use the-script HML-element to add the-Javascript file|s:
<script src="location-of-file/file.js"></script>
Then all the-semantic-units of the-library were-added in the-ljb-most-whole-object (global).
Because the-library's-API is-added in the-global-object (window), it is a good practice, to store the-custom-semantic-units of the-library as part of ONE semantic-unit (usually object).
2. Use the-link HML-element to add the-CSS file|s, if present:
<link rel="stylesheet" href="location-of-file/file.css" />
Specific::
* http://www.Javascripting.com/
description::
JavaScript templating refers to the client side data binding method implemented with the JavaScript language.
This approach became popular thanks to JavaScript's increased use, its increase in client processing capabilities, and the trend to outsource computations to the client's web browser. Popular JavaScript templating libraries are AngularJS, Backbone.js, Ember.js, Handlebars.js, Vue.js and Mustache.js.
A frequent practice is to use double curly brackets (i.e. {{key}}) to call values of the given key from data files, often JSON objects.
[https://en.wikipedia.org/wiki/JavaScript_templating]
name::
* McsEngl.lagJsbr'templating-library,
* McsEngl.Javascript-templating-library,
Specific::
* AngularJS,
* Backbone.js,
* Chaplin.js,
* Dust.js,
* Ember.js,
* Handlebars.js,
* HTMLBars,
* KnockoutJS,
* Marko.js,
* Mustache.js,
* React.js,
* Underscore.js,
* Vue.js,
description::
lagJsbr-program is an-algorithm which can-run autonomously, written in code-format, in a-webpage.
name::
* McsEngl.Jsbralgo.program!⇒Jsbrpgm,
* McsEngl.Jsbrpgm,
* McsEngl.appJsb!⇒Jsbrpgm,
* McsEngl.lagJsbr'pgm!⇒Jsbrpgm,
* McsEngl.lagJsbr'program!⇒Jsbrpgm,
Part::
* lagJsbr-library,
* lagJsbr-sentence,
description::
You open the-HML-doc (webpage) in a-webbrowser which contains it.
name::
* McsEngl.lagJsbr'program'execution,
* McsEngl.Jsbrpgm'call,
* McsEngl.Jsbrpgm'execution,
* McsEngl.Jsbrpgm'invocation,
* McsEngl.Jsbrpgm'open,
* McsEngl.Jsbrpgm'run,
description::
This is the classic simplest program that displays the-text 'Hello World'.
You can-open it from this link.
<!DOCTYPE html>
<html>
<head>
<title>Jsbrpgm.Hello_World</title>
</head>
<body>
<script>
alert('Hello World!');
</script>
</body>
</html>
name::
* McsEngl.lagJsbr'code.Hello-World!,
* McsEngl.lagJsbr'program.Hello-World!,
* McsEngl.Jsbrpgm.Hello-World!,
description::
A real classic ljb-program contains at least 3 files:
a) An-html-file with the-structure and info of the-webpage we see in the-browser.
b) A-css-file with the-style of the-page and
c) An-ljb-file with the-processing of the-page's info.
NOTE: the-ljb-file must-be at the-end of the-html-file in-order-to use the-elements of the-page. ALSO it is important to export ONE object into the-most-whole-object.
//the-html-file
<html>
<head>
<title>Example HW2</title>
<link rel="stylesheet" href="ex.css">
</head>
<body>
<button id="idBtn">Click me</button>
<script src="ex.js"></script>
</body>
</html>
//the-css-file: ex.css
button {
background-color: green;
color: white;
}
//the-ljb-file: ex.js
var oOut = (function () {
var oOut = {
// semantic-units accessed anywhere in the-program
oHTMLButtonElement: document.getElementById("idBtn")
}
oOut.fStart = function () {
oOut.oHTMLButtonElement.addEventListener('click', function (oEvtIn) {
alert('Hello World!');
});
};
document.addEventListener('DOMContentLoaded', function () {
//the executed startpoint of the-program
oOut.fStart();
});
return oOut;
})();
name::
* McsEngl.lagJsbr'code.Hello-World!-2,
* McsEngl.lagJsbr'program.Hello-World!-2,
* McsEngl.Jsbrpgm.Hello-World!-2,
name::
* McsEngl.Jsbrpgm.spredsheet,
* McsEngl.spredsheet.lagJsbr,
description::
Browser-management is the-algorithm dealing with the-browser, which is the host environment for Jsbr.
name::
* McsEngl.lagJsbr'browser-management,
* McsEngl.lagJsbr'browser-manipulation,
* McsEngl.lagJsbr'browser-processing,
* McsEngl.JsbralgoBrowser,
Whole-part-tree:
description::
Window
is the-constructor of window
(window.constructor //function Window() { [native code] }
).
name::
* McsEngl.lagJsbr'Window-function,
Whole-chain::
* window,
generic-chain::
* EventTarget,
* Function.prototype,
* Object.prototype,
Member:
(Chrome.50):
> Object.getOwnPropertyNames(Window).sort()
["PERSISTENT", "TEMPORARY", "arguments", "caller", "length", "name", "prototype"]
(Firefox.46):
> Object.getOwnPropertyNames(Window).sort()
["length", "name", "prototype"]
(Edge.20):
> Object.getOwnPropertyNames(Window).sort()
[ "arguments", "caller", "name", "prototype" ]
description::
Events (webpage-events) are DOINGS in a-webpage, such as mouse clicks, mouse overs, etc.
Events AND associated functions (the-event-listeners) ARE-REGISTERED on components of the-page (the-targets).
When events occur, their associated event-listeners ARE-TRIGGERED (are-called).
oTarget.addEventListener(sEvent, fEventlistener);
name::
* McsEngl.Jsbralgo.event-management!⇒Jsbrevent,
* McsEngl.lagJsbr'event-manipulation!⇒Jsbrevent,
* McsEngl.Jsbrevent,
Whole-part-tree:
Generic-specific-tree:
description::
lagJsbr-Event-object is an-object that represents webpage-events (its archetype).
Jsbr has many constructors that create event-objects.
All event-objects inherit from Event.prototype
.
name::
* McsEngl.lagJsbr'Event-object,
* McsEngl.lagJsbr'oEvt,
Whole-chain::
* the-semantic-unit in which defined,
generic-chain::
* Constructor.prototype,
* Event.prototype,
* Object.prototype,
addressWpg::
* https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key: you can-see the-name of key pressed,
* https://keycode.info/: you can-see the-name of key pressed,
Member:
The-members of an-oEvt depend of the-constructor used to create them.
Constructor:
These constructors create oEvts.
* ApplicationCacheErrorEvent,
* AudioProcessingEvent,
* AutocompleteErrorEvent,
* BeforeUnloadEvent,
* CloseEvent,
* CompositionEvent,
* CustomEvent,
* DeviceMotionEvent,
* DeviceOrientationEvent,
* DragEvent,
* ErrorEvent,
* Event,
* FocusEvent,
* GamepadEvent,
* HashChangeEvent,
* IDBVersionChangeEvent,
* KeyboardEvent,
* MediaKeyMessageEvent,
* MediaStreamEvent,
* MessageEvent,
* MouseEvent,
* MutationEvent,
* OfflineAudioCompletionEvent,
* PageTransitionEvent,
* PopStateEvent,
* ProgressEvent,
* SpeechSynthesisEvent,
* StorageEvent,
* SVGZoomEvent,
* TextEvent,
* TouchEvent,
* TrackEvent,
* TransitionEvent,
* UIEvent,
* WebGLContextEvent,
* WebKitAnimationEvent,
* WebKitTransitionEvent,
* WheelEvent,
description::
lagJsbr-EventListener-function is a-function that is-called when the-event occurs on a-target.
name::
* McsEngl.lagJsbr'EventListener-function,
* McsEngl.Jsbrf.EventListener,
Whole-chain::
* the-semantic-unit in which defined,
generic-chain::
* Function.prototype,
* Object.prototype,
description::
lagJsbr-EventTarget-object is an-object that represents an-HML-element of the-webpage on which the-event is-registered.
name::
* McsEngl.lagJsbr'EventTarget-object,
Whole-chain::
* the-semantic-unit in which defined,
generic-chain::
* ..,
* Node.prototype,
* EventTarget.prototype,
* Object.prototype,
===
All targets are specific of EventTarget.prototype
which contains the-method addEventListener()
we need to add listeners on targets.
description::
Event.prototype
is the-generic-object of all lagJsbr-event-objects which represent webpage-events.
name::
* McsEngl.lagJsbr'Event.prototype,
Whole-chain::
* Event-function,
* window, (window.Event //function Event() { [native code] }
)
generic-chain::
* Object.prototype, (Event.prototype.__proto__ === Object.prototype //true
)
Member:
(Chrome.50):
> Object.getOwnPropertyNames(Event.prototype).sort()
["AT_TARGET", "BLUR", "BUBBLING_PHASE", "CAPTURING_PHASE", "CHANGE", "CLICK", "DBLCLICK", "DRAGDROP", "FOCUS", "KEYDOWN", "KEYPRESS", "KEYUP", "MOUSEDOWN", "MOUSEDRAG", "MOUSEMOVE", "MOUSEOUT", "MOUSEOVER", "MOUSEUP", "NONE", "SELECT", "bubbles", "cancelBubble", "cancelable", "constructor", "currentTarget", "defaultPrevented", "eventPhase", "initEvent", "path", "preventDefault", "returnValue", "srcElement", "stopImmediatePropagation", "stopPropagation", "target", "timeStamp", "type"]
(Firefox.46):
> Object.getOwnPropertyNames(Event.prototype).sort()
[]
(Edge.20):
> Object.getOwnPropertyNames(Event.prototype).sort()
[]
(Safari.5-1-7):
> Object.getOwnPropertyNames(Event.prototype).sort()
[]
description::
Event
is a -constructor of lagJsbr-event-objects which contains the-Event.prototype, the-generic of all oEvts.
name::
* McsEngl.lagJsbr'Event,
* McsEngl.lagJsbr'Event-constructor,
* McsEngl.lagJsbr'Event-function,
Whole-chain::
* window, (window.Event //function Event() { [native code] }
)
generic-chain::
* Function.prototype, (Event.__proto__ === Function.prototype //true
)
* Object.prototype, (Event.__proto__.__proto__ === Object.prototype //true
)
Member:
(Chrome.50):
> Object.getOwnPropertyNames(Event).sort()
["AT_TARGET", "BLUR", "BUBBLING_PHASE", "CAPTURING_PHASE", "CHANGE", "CLICK", "DBLCLICK", "DRAGDROP", "FOCUS", "KEYDOWN", "KEYPRESS", "KEYUP", "MOUSEDOWN", "MOUSEDRAG", "MOUSEMOVE", "MOUSEOUT", "MOUSEOVER", "MOUSEUP", "NONE", "SELECT", "arguments", "caller", "length", "name", "prototype"]
(Firefox.46):
> Object.getOwnPropertyNames(Event).sort()
["ALT_MASK", "AT_TARGET", "BUBBLING_PHASE", "CAPTURING_PHASE", "CONTROL_MASK", "META_MASK", "NONE", "SHIFT_MASK", "length", "name", "prototype"]
(Edge.20):
> Object.getOwnPropertyNames(Event).sort()
[]
(Safari.5-1-7):
> Object.getOwnPropertyNames(Event).sort()
[]
description::
EventTarget.prototype
is the-generic-object of Node.prototype, and thus of any component of a-webpage.
name::
* McsEngl.lagJsbr'EventTarget.prototype,
* McsEngl.lagJsbr'eventTarget.prototype,
Whole-chain::
* EventTarget-function,
* window, (window.EventTarget //function EventTarget() { [native code] }
)
generic-chain::
* Object.prototype, (EventTarget.prototype.__proto__ === Object.prototype //true
)
Member:
(Chrome.50):
> Object.getOwnPropertyNames(EventTarget.prototype).sort()
["addEventListener", "constructor", "dispatchEvent", "removeEventListener"]
(Firefox.46):
> Object.getOwnPropertyNames(EventTarget.prototype).sort()
["addEventListener", "constructor", "dispatchEvent", "removeEventListener"]
(Edge.20):
> Object.getOwnPropertyNames(EventTarget.prototype).sort()
["addEventListener", "constructor", "dispatchEvent", "removeEventListener"]
(Safari.5-1-7):
> Object.getOwnPropertyNames(EventTarget.prototype).sort()
[]
description::
EventTarget
is the-constructor of the-EventTarget.prototype.
name::
* McsEngl.lagJsbr'EventTarget,
* McsEngl.lagJsbr'EventTarget-constructor,
* McsEngl.lagJsbr'EventTarget-function,
Whole-chain::
* window, (window.EventTarget //function EventTarget() { [native code] }
)
generic-chain::
* Function.prototype, (EventTarget.__proto__ === Function.prototype //true
)
* Object.prototype, (EventTarget.__proto__.__proto__ === Object.prototype //true
)
Member:
(Chrome.50):
> Object.getOwnPropertyNames(EventTarget).sort()
["arguments", "caller", "length", "name", "prototype"]
(Firefox.46):
> Object.getOwnPropertyNames(EventTarget).sort()
["length", "name", "prototype"]
(Edge.20):
> Object.getOwnPropertyNames(EventTarget).sort()
["arguments", "caller", "name", "prototype"]
Specific::
* Window, (Window.__proto__ === EventTarget //true
)
description::
"The DOMContentLoaded event fires when the initial HTML document has been completely loaded and parsed, without waiting for stylesheets, images, and subframes to finish loading.
... A different event, load, should be used only to detect a fully-loaded page. It is a common mistake to use load where DOMContentLoaded would be more appropriate."
[{2020-12-18} https://developer.mozilla.org/en-US/docs/Web/API/Window/DOMContentLoaded_event]
name::
* McsEngl.Jsbrevetn.DOMContentLoaded,
addressWpg::
* https://stackoverflow.com/questions/66318679/unexpected-token-export,
description::
ALL lagJsbr-algorithms manage HML, because ljb-code is part of an-HML-document and this reason of existance of Jsbr.
name::
* McsEngl.Jsbralgo'HML-management!⇒JsbralgoHtml,
* McsEngl.lagJsbr'HTML-management!⇒JsbralgoHtml,
* McsEngl.HTML-processing--JavascriptBrowser!⇒JsbralgoHtml,
* McsEngl.JsbralgoHtml,
name::
* McsEngl.lagJsbr'HML-API,
* McsEngl.lagJsbr'API.HML,
Jsbr'Hml-API'Whole-part-tree:
Jsbr'Hml-API'Generic-specific-tree:
description::
DOM is a-specification of an-HML-document representation in Jsbr.
name::
* McsEngl.lagJsbr'DOM-(Document-Object-Model),
* McsEngl.lagJsbr'Document-Object-Model-(DOM),
* McsEngl.Document-Object-Model-of-ljb,
Spec:
The-spec: https://www.w3.org/TR/domcore/
description::
document
is the-object that represents an-HML-document.
document
is an-objectof HTMLDocument
constructor-function.
document
is an-instance of HTMLDocument.prototype
.
name::
* McsEngl.document-object-JavascriptBrowser,
* McsEngl.lagJsbr'document-object,
Whole-chain::
* window, (window.document //#document
)
generic-chain::
* HTMLDocument.prototype,
* Document.prototype,
* Node.prototype,
* EventTarget.prototype,
* Object.prototype,
Member:
// Chrome.61 Object.getOwnPropertyNames(document).sort()).join(', '))
[location]
// Object.getOwnPropertyNames(document.__proto__).sort()).join(', '))
[alinkColor, all, bgColor, captureEvents, clear, constructor, fgColor, linkColor, releaseEvents, vlinkColor]
// Object.getOwnPropertyNames(document.__proto__.__proto__).sort()).join(', '))
[URL, activeElement, adoptNode, anchors, append, applets, body, caretRangeFromPoint, characterSet, charset, childElementCount, children, close, compatMode, constructor, contentType, cookie, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEvent, createExpression, createNSResolver, createNodeIterator, createProcessingInstruction, createRange, createTextNode, createTreeWalker, currentScript, defaultView, designMode, dir, doctype, documentElement, documentURI, domain, elementFromPoint, elementsFromPoint, embeds, evaluate, execCommand, exitPointerLock, firstElementChild, fonts, forms, getElementById, getElementsByClassName, getElementsByName, getElementsByTagName, getElementsByTagNameNS, getSelection, hasFocus, head, hidden, images, implementation, importNode, inputEncoding, lastElementChild, lastModified, links, onabort, onauxclick, onbeforecopy, onbeforecut, onbeforepaste, onblur, oncancel, oncanplay, oncanplaythrough, onchange, onclick, onclose, oncontextmenu, oncopy, oncuechange, oncut, ondblclick, ondrag, ondragend, ondragenter, ondragleave, ondragover, ondragstart, ondrop, ondurationchange, onemptied, onended, onerror, onfocus, ongotpointercapture, oninput, oninvalid, onkeydown, onkeypress, onkeyup, onload, onloadeddata, onloadedmetadata, onloadstart, onlostpointercapture, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, onpaste, onpause, onplay, onplaying, onpointercancel, onpointerdown, onpointerenter, onpointerleave, onpointerlockchange, onpointerlockerror, onpointermove, onpointerout, onpointerover, onpointerup, onprogress, onratechange, onreadystatechange, onreset, onresize, onscroll, onsearch, onseeked, onseeking, onselect, onselectionchange, onselectstart, onstalled, onsubmit, onsuspend, ontimeupdate, ontoggle, onvolumechange, onwaiting, onwebkitfullscreenchange, onwebkitfullscreenerror, onwheel, open, origin, plugins, pointerLockElement, preferredStylesheetSet, prepend, queryCommandEnabled, queryCommandIndeterm, queryCommandState, queryCommandSupported, queryCommandValue, querySelector, querySelectorAll, readyState, referrer, registerElement, rootElement, scripts, scrollingElement, selectedStylesheetSet, styleSheets, title, visibilityState, webkitCancelFullScreen, webkitCurrentFullScreenElement, webkitExitFullscreen, webkitFullscreenElement, webkitFullscreenEnabled, webkitHidden, webkitIsFullScreen, webkitVisibilityState, write, writeln, xmlEncoding, xmlStandalone, xmlVersion]
// Object.getOwnPropertyNames(document.__proto__.__proto__.__proto__).sort()).join(', '))
[ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, appendChild, baseURI, childNodes, cloneNode, compareDocumentPosition, constructor, contains, firstChild, getRootNode, hasChildNodes, insertBefore, isConnected, isDefaultNamespace, isEqualNode, isSameNode, lastChild, lookupNamespaceURI, lookupPrefix, nextSibling, nodeName, nodeType, nodeValue, normalize, ownerDocument, parentElement, parentNode, previousSibling, removeChild, replaceChild, textContent]
// Object.getOwnPropertyNames(document.__proto__.__proto__.__proto__.__proto__).sort()).join(', '))
[addEventListener, constructor, dispatchEvent, removeEventListener]
// Object.getOwnPropertyNames(document.__proto__.__proto__.__proto__.__proto__.__proto__).sort()).join(', '))
[__defineGetter__, __defineSetter__, __lookupGetter__, __lookupSetter__, __proto__, constructor, hasOwnProperty, isPrototypeOf, propertyIsEnumerable, toLocaleString, toString, valueOf]
===
(Chrome.50):
> Object.getOwnPropertyNames(document).sort()
["location"]
(Firefox.46):
> Object.getOwnPropertyNames(document).sort()
["location"]
(Edge.20):
> Object.getOwnPropertyNames(document).sort()
["__IE_DEVTOOLBAR_CONSOLE_EVAL_ERROR", "__IE_DEVTOOLBAR_CONSOLE_EVAL_ERRORCODE", "__IE_DEVTOOLBAR_CONSOLE_EVAL_RESULT, "closure_lm_199280", "closure_lm_736068", "f"]
(Safari.5-1-7):
> Object.getOwnPropertyNames(document).sort()
["URL", "_html5shiv", "activeElement", "alinkColor", "all", "anchors", "applets", "attributes", "baseURI", "bgColor", "body", "characterSet", "charset", "childNodes", "compatMode", "constructor", "cookie", "defaultCharset", "defaultView", "designMode", "dir", "doctype", "documentElement", "documentURI", "domain", "embeds", "fgColor", "firstChild", "forms", "head", "height", "images", "implementation", "inputEncoding", "lastChild", "lastModified", "linkColor", "links", "localName", "location", "namespaceURI", "nextSibling", "nodeName", "nodeType", "nodeValue", "onabort", "onbeforecopy", "onbeforecut", "onbeforepaste", "onblur", "onchange", "onclick", "oncontextmenu", "oncopy", "oncut", "ondblclick", "ondrag", "ondragend", "ondragenter", "ondragleave", "ondragover", "ondragstart", "ondrop", "onerror", "onfocus", "oninput", "oninvalid", "onkeydown", "onkeypress", "onkeyup", "onload", "onmousedown", "onmousemove", "onmouseout", "onmouseover", "onmouseup", "onmousewheel", "onpaste", "onreadystatechange", "onreset", "onscroll", "onsearch", "onselect", "onselectionchange", "onselectstart", "onsubmit", "onwebkitfullscreenchange", "ownerDocument", "parentElement", "parentNode", "plugins", "preferredStylesheetSet", "prefix", "previousSibling", "readyState", "referrer", "scripts", "selectedStylesheetSet", "styleSheets", "textContent", "title", "vlinkColor", "webkitCurrentFullScreenElement", "webkitFullScreenKeyboardInputAllowed", "webkitIsFullScreen", "width", "xmlEncoding", "xmlStandalone", "xmlVersion"]
description::
HTMLDocument.prototype
is the-generic-object of document
.
document
is an-instance of HTMLDocument.prototype
.
document
is an-objectof HTMLDocument
.
name::
* McsEngl.HTMLDocument.prototype-JavascriptBrowser,
* McsEngl.lagJsbr'HTMLDocument.prototype,
Whole-chain::
* HTMLDocument-function,
* window,
generic-chain::
* Document.prototype,
* Node.prototype,
* EventTarget.prototype,
* Object.prototype,
Member:
// Chrome.61 Object.getOwnPropertyNames(HTMLDocument.prototype).sort()).join(', '))
[alinkColor, all, bgColor, captureEvents, clear, constructor, fgColor, linkColor, releaseEvents, vlinkColor]
// Object.getOwnPropertyNames(HTMLDocument.prototype.__proto__).sort()).join(', '))
[URL, activeElement, adoptNode, anchors, append, applets, body, caretRangeFromPoint, characterSet, charset, childElementCount, children, close, compatMode, constructor, contentType, cookie, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEvent, createExpression, createNSResolver, createNodeIterator, createProcessingInstruction, createRange, createTextNode, createTreeWalker, currentScript, defaultView, designMode, dir, doctype, documentElement, documentURI, domain, elementFromPoint, elementsFromPoint, embeds, evaluate, execCommand, exitPointerLock, firstElementChild, fonts, forms, getElementById, getElementsByClassName, getElementsByName, getElementsByTagName, getElementsByTagNameNS, getSelection, hasFocus, head, hidden, images, implementation, importNode, inputEncoding, lastElementChild, lastModified, links, onabort, onauxclick, onbeforecopy, onbeforecut, onbeforepaste, onblur, oncancel, oncanplay, oncanplaythrough, onchange, onclick, onclose, oncontextmenu, oncopy, oncuechange, oncut, ondblclick, ondrag, ondragend, ondragenter, ondragleave, ondragover, ondragstart, ondrop, ondurationchange, onemptied, onended, onerror, onfocus, ongotpointercapture, oninput, oninvalid, onkeydown, onkeypress, onkeyup, onload, onloadeddata, onloadedmetadata, onloadstart, onlostpointercapture, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, onpaste, onpause, onplay, onplaying, onpointercancel, onpointerdown, onpointerenter, onpointerleave, onpointerlockchange, onpointerlockerror, onpointermove, onpointerout, onpointerover, onpointerup, onprogress, onratechange, onreadystatechange, onreset, onresize, onscroll, onsearch, onseeked, onseeking, onselect, onselectionchange, onselectstart, onstalled, onsubmit, onsuspend, ontimeupdate, ontoggle, onvisibilitychange, onvolumechange, onwaiting, onwebkitfullscreenchange, onwebkitfullscreenerror, onwheel, open, origin, plugins, pointerLockElement, preferredStylesheetSet, prepend, queryCommandEnabled, queryCommandIndeterm, queryCommandState, queryCommandSupported, queryCommandValue, querySelector, querySelectorAll, readyState, referrer, registerElement, rootElement, scripts, scrollingElement, selectedStylesheetSet, styleSheets, title, visibilityState, webkitCancelFullScreen, webkitCurrentFullScreenElement, webkitExitFullscreen, webkitFullscreenElement, webkitFullscreenEnabled, webkitHidden, webkitIsFullScreen, webkitVisibilityState, write, writeln, xmlEncoding, xmlStandalone, xmlVersion]
// Object.getOwnPropertyNames(HTMLDocument.prototype.__proto__.__proto__).sort()).join(', '))
[ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, appendChild, baseURI, childNodes, cloneNode, compareDocumentPosition, constructor, contains, firstChild, getRootNode, hasChildNodes, insertBefore, isConnected, isDefaultNamespace, isEqualNode, isSameNode, lastChild, lookupNamespaceURI, lookupPrefix, nextSibling, nodeName, nodeType, nodeValue, normalize, ownerDocument, parentElement, parentNode, previousSibling, removeChild, replaceChild, textContent]
// Object.getOwnPropertyNames(HTMLDocument.prototype.__proto__.__proto__.__proto__).sort()).join(', '))
[addEventListener, constructor, dispatchEvent, removeEventListener]
// Object.getOwnPropertyNames(HTMLDocument.prototype.__proto__.__proto__.__proto__.__proto__).sort()).join(', '))
[__defineGetter__, __defineSetter__, __lookupGetter__, __lookupSetter__, __proto__, constructor, hasOwnProperty, isPrototypeOf, propertyIsEnumerable, toLocaleString, toString, valueOf]
===
(Chrome.50):
> Object.getOwnPropertyNames(HTMLDocument.prototype).sort()
["alinkColor", "all", "bgColor", "captureEvents", "clear", "constructor", "fgColor", "linkColor", "releaseEvents", "vlinkColor"]
(Firefox.46):
> Object.getOwnPropertyNames(HTMLDocument.prototype).sort()
["alinkColor", "all", "anchors", "applets", "bgColor", "body", "captureEvents", "clear", "close", "constructor", "cookie", "designMode", "domain", "embeds", "execCommand", "fgColor", "forms", "getElementsByName", "getItems", "getSelection", "head", "images", "linkColor", "links", "open", "plugins", "queryCommandEnabled", "queryCommandIndeterm", "queryCommandState", "queryCommandSupported", "queryCommandValue", "releaseEvents", "scripts", "vlinkColor", "write", "writeln"]
(Edge.20):
> Object.getOwnPropertyNames(HTMLDocument.prototype).sort()
["constructor"]
(Safari.5-1-7):
> Object.getOwnPropertyNames(HTMLDocument.prototype).sort()
["captureEvents", "clear", "close", "hasFocus", "open", "releaseEvents", "write", "writeln"]
description::
Document.prototype
is the-generic-object of any object created with the-Document-constructor-function.
name::
* McsEngl.Document.prototype-JavascriptBrowser,
* McsEngl.lagJsbr'Document.prototype,
Whole-chain::
* Document-function,
* window,
generic-chain::
* Node.prototype,
* EventTarget.prototype,
* Object.prototype,
Member:
// Chrome.61 Object.getOwnPropertyNames(Document.prototype).sort()).join(', '))
[URL, activeElement, adoptNode, anchors, append, applets, body, caretRangeFromPoint, characterSet, charset, childElementCount, children, close, compatMode, constructor, contentType, cookie, createAttribute, createAttributeNS, createCDATASection, createComment, createDocumentFragment, createElement, createElementNS, createEvent, createExpression, createNSResolver, createNodeIterator, createProcessingInstruction, createRange, createTextNode, createTreeWalker, currentScript, defaultView, designMode, dir, doctype, documentElement, documentURI, domain, elementFromPoint, elementsFromPoint, embeds, evaluate, execCommand, exitPointerLock, firstElementChild, fonts, forms, getElementById, getElementsByClassName, getElementsByName, getElementsByTagName, getElementsByTagNameNS, getSelection, hasFocus, head, hidden, images, implementation, importNode, inputEncoding, lastElementChild, lastModified, links, onabort, onauxclick, onbeforecopy, onbeforecut, onbeforepaste, onblur, oncancel, oncanplay, oncanplaythrough, onchange, onclick, onclose, oncontextmenu, oncopy, oncuechange, oncut, ondblclick, ondrag, ondragend, ondragenter, ondragleave, ondragover, ondragstart, ondrop, ondurationchange, onemptied, onended, onerror, onfocus, ongotpointercapture, oninput, oninvalid, onkeydown, onkeypress, onkeyup, onload, onloadeddata, onloadedmetadata, onloadstart, onlostpointercapture, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, onpaste, onpause, onplay, onplaying, onpointercancel, onpointerdown, onpointerenter, onpointerleave, onpointerlockchange, onpointerlockerror, onpointermove, onpointerout, onpointerover, onpointerup, onprogress, onratechange, onreadystatechange, onreset, onresize, onscroll, onsearch, onseeked, onseeking, onselect, onselectionchange, onselectstart, onstalled, onsubmit, onsuspend, ontimeupdate, ontoggle, onvisibilitychange, onvolumechange, onwaiting, onwebkitfullscreenchange, onwebkitfullscreenerror, onwheel, open, origin, plugins, pointerLockElement, preferredStylesheetSet, prepend, queryCommandEnabled, queryCommandIndeterm, queryCommandState, queryCommandSupported, queryCommandValue, querySelector, querySelectorAll, readyState, referrer, registerElement, rootElement, scripts, scrollingElement, selectedStylesheetSet, styleSheets, title, visibilityState, webkitCancelFullScreen, webkitCurrentFullScreenElement, webkitExitFullscreen, webkitFullscreenElement, webkitFullscreenEnabled, webkitHidden, webkitIsFullScreen, webkitVisibilityState, write, writeln, xmlEncoding, xmlStandalone, xmlVersion]
// Object.getOwnPropertyNames(Document.prototype.__proto__).sort()).join(', '))
[ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, appendChild, baseURI, childNodes, cloneNode, compareDocumentPosition, constructor, contains, firstChild, getRootNode, hasChildNodes, insertBefore, isConnected, isDefaultNamespace, isEqualNode, isSameNode, lastChild, lookupNamespaceURI, lookupPrefix, nextSibling, nodeName, nodeType, nodeValue, normalize, ownerDocument, parentElement, parentNode, previousSibling, removeChild, replaceChild, textContent]
// Object.getOwnPropertyNames(Document.prototype.__proto__.__proto__).sort()).join(', '))
[addEventListener, constructor, dispatchEvent, removeEventListener]
// Object.getOwnPropertyNames(Document.prototype.__proto__.__proto__.__proto__).sort()).join(', '))
[__defineGetter__, __defineSetter__, __lookupGetter__, __lookupSetter__, __proto__, constructor, hasOwnProperty, isPrototypeOf, propertyIsEnumerable, toLocaleString, toString, valueOf]
===
(Chrome.50):
> Object.getOwnPropertyNames(Document.prototype).sort()
["URL", "activeElement", "adoptNode", "anchors", "applets", "body", "caretRangeFromPoint", "characterSet", "charset", "childElementCount", "children", "close", "compatMode", "constructor", "contentType", "cookie", "createAttribute", "createAttributeNS", "createCDATASection", "createComment", "createDocumentFragment", "createElement", "createElementNS", "createEvent", "createExpression", "createNSResolver", "createNodeIterator", "createProcessingInstruction", "createRange", "createTextNode", "createTreeWalker", "currentScript", "defaultView", "designMode", "dir", "doctype", "documentElement", "documentURI", "domain", "elementFromPoint", "elementsFromPoint", "embeds", "evaluate", "execCommand", "exitPointerLock", "firstElementChild", "fonts", "forms", "getElementById", "getElementsByClassName", "getElementsByName", "getElementsByTagName", "getElementsByTagNameNS", "getSelection", "hasFocus", "head", "hidden", "images", "implementation", "importNode", "inputEncoding", "lastElementChild", "lastModified", "links", "onabort", "onautocomplete", "onautocompleteerror", "onbeforecopy", "onbeforecut", "onbeforepaste", "onblur", "oncancel", "oncanplay", "oncanplaythrough", "onchange", "onclick", "onclose", "oncontextmenu", "oncopy", "oncuechange", "oncut", "ondblclick", "ondrag", "ondragend", "ondragenter", "ondragleave", "ondragover", "ondragstart", "ondrop", "ondurationchange", "onemptied", "onended", "onerror", "onfocus", "oninput", "oninvalid", "onkeydown", "onkeypress", "onkeyup", "onload", "onloadeddata", "onloadedmetadata", "onloadstart", "onmousedown", "onmouseenter", "onmouseleave", "onmousemove", "onmouseout", "onmouseover", "onmouseup", "onmousewheel", "onpaste", "onpause", "onplay", "onplaying", "onpointerlockchange", "onpointerlockerror", "onprogress", "onratechange", "onreadystatechange", "onreset", "onresize", "onscroll", "onsearch", "onseeked", "onseeking", "onselect", "onselectionchange", "onselectstart", "onshow", "onstalled", "onsubmit", "onsuspend", "ontimeupdate", "ontoggle", "onvolumechange", "onwaiting", "onwebkitfullscreenchange", "onwebkitfullscreenerror", "onwheel", "open", "origin", "plugins", "pointerLockElement", "preferredStylesheetSet", "queryCommandEnabled", "queryCommandIndeterm", "queryCommandState", "queryCommandSupported", "queryCommandValue", "querySelector", "querySelectorAll", "readyState", "referrer", "registerElement", "rootElement", "scripts", "scrollingElement", "selectedStylesheetSet", "styleSheets", "title", "visibilityState", "webkitCancelFullScreen", "webkitCurrentFullScreenElement", "webkitExitFullscreen", "webkitFullscreenElement", "webkitFullscreenEnabled", "webkitHidden", "webkitIsFullScreen", "webkitVisibilityState", "write", "writeln", "xmlEncoding", "xmlStandalone", "xmlVersion"]
(Firefox.46):
> Object.getOwnPropertyNames(Document.prototype).sort()
["URL", "activeElement", "adoptNode", "caretPositionFromPoint", "characterSet", "charset", "childElementCount", "children", "compatMode", "constructor", "contentType", "createAttribute", "createAttributeNS", "createCDATASection", "createComment", "createDocumentFragment", "createElement", "createElementNS", "createEvent", "createExpression", "createNSResolver", "createNodeIterator", "createProcessingInstruction", "createRange", "createTextNode", "createTreeWalker", "currentScript", "defaultView", "dir", "doctype", "documentElement", "documentURI", "elementFromPoint", "elementsFromPoint", "enableStyleSheetsForSet", "evaluate", "firstElementChild", "fonts", "getElementById", "getElementsByClassName", "getElementsByTagName", "getElementsByTagNameNS", "hasFocus", "hidden", "implementation", "importNode", "inputEncoding", "lastElementChild", "lastModified", "lastStyleSheetSet", "mozCancelFullScreen", "mozExitPointerLock", "mozFullScreen", "mozFullScreenElement", "mozFullScreenEnabled", "mozHidden", "mozPointerLockElement", "mozSetImageElement", "mozVisibilityState", "onabort", "onafterscriptexecute", "onbeforescriptexecute", "onblur", "oncanplay", "oncanplaythrough", "onchange", "onclick", "oncontextmenu", "oncopy", "oncut", "ondblclick", "ondrag", "ondragend", "ondragenter", "ondragleave", "ondragover", "ondragstart", "ondrop", "ondurationchange", "onemptied", "onended", "onerror", "onfocus", "oninput", "oninvalid", "onkeydown", "onkeypress", "onkeyup", "onload", "onloadeddata", "onloadedmetadata", "onloadstart", "onmousedown", "onmouseenter", "onmouseleave", "onmousemove", "onmouseout", "onmouseover", "onmouseup", "onmozfullscreenchange", "onmozfullscreenerror", "onmozpointerlockchange", "onmozpointerlockerror", "onpaste", "onpause", "onplay", "onplaying", "onprogress", "onratechange", "onreadystatechange", "onreset", "onresize", "onscroll", "onseeked", "onseeking", "onselect", "onshow", "onstalled", "onsubmit", "onsuspend", "ontimeupdate", "onvolumechange", "onwaiting", "onwheel", "preferredStyleSheetSet", "querySelector", "querySelectorAll", "readyState", "referrer", "releaseCapture", "selectedStyleSheetSet", "styleSheetSets", "styleSheets", "title", "visibilityState"]
(Edge.20):
> Object.getOwnPropertyNames(Document.prototype).sort()
[190 members]
(Safari.5-1-7):
> Object.getOwnPropertyNames(Document.prototype).sort()
["adoptNode", "caretRangeFromPoint", "createAttribute", "createAttributeNS", "createCDATASection", "createComment", "createDocumentFragment", "createElement", "createElementNS", "createEntityReference", "createEvent", "createExpression", "createNSResolver", "createNodeIterator", "createProcessingInstruction", "createRange", "createTextNode", "createTreeWalker", "elementFromPoint", "evaluate", "execCommand", "getCSSCanvasContext", "getElementById", "getElementsByClassName", "getElementsByName", "getElementsByTagName", "getElementsByTagNameNS", "getOverrideStyle", "getSelection", "importNode", "queryCommandEnabled", "queryCommandIndeterm", "queryCommandState", "queryCommandSupported", "queryCommandValue", "querySelector", "querySelectorAll", "webkitCancelFullScreen"]
description::
Node.prototype
is the-generic-object of any oNode
objectof Node
constructor-function.
name::
* McsEngl.Node.prototype-JavascriptBrowser,
* McsEngl.lagJsbr'Node.prototype,
Whole-chain::
* Node-function,
* window,
generic-chain::
* EventTarget.prototype,
* Object.prototype,
Member:
// Chrome.61 Object.getOwnPropertyNames(Node.prototype).sort()).join(', '))
[ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, appendChild, baseURI, childNodes, cloneNode, compareDocumentPosition, constructor, contains, firstChild, getRootNode, hasChildNodes, insertBefore, isConnected, isDefaultNamespace, isEqualNode, isSameNode, lastChild, lookupNamespaceURI, lookupPrefix, nextSibling, nodeName, nodeType, nodeValue, normalize, ownerDocument, parentElement, parentNode, previousSibling, removeChild, replaceChild, textContent]
// Object.getOwnPropertyNames(Node.prototype.__proto__).sort()).join(', '))
[addEventListener, constructor, dispatchEvent, removeEventListener]
// Object.getOwnPropertyNames(Node.prototype.__proto__.__proto__).sort()).join(', '))
[__defineGetter__, __defineSetter__, __lookupGetter__, __lookupSetter__, __proto__, constructor, hasOwnProperty, isPrototypeOf, propertyIsEnumerable, toLocaleString, toString, valueOf]
===
(Chrome.50):
> Object.getOwnPropertyNames(Node.prototype).sort()
["ATTRIBUTE_NODE", "CDATA_SECTION_NODE", "COMMENT_NODE", "DOCUMENT_FRAGMENT_NODE", "DOCUMENT_NODE", "DOCUMENT_POSITION_CONTAINED_BY", "DOCUMENT_POSITION_CONTAINS", "DOCUMENT_POSITION_DISCONNECTED", "DOCUMENT_POSITION_FOLLOWING", "DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC", "DOCUMENT_POSITION_PRECEDING", "DOCUMENT_TYPE_NODE", "ELEMENT_NODE", "ENTITY_NODE", "ENTITY_REFERENCE_NODE", "NOTATION_NODE", "PROCESSING_INSTRUCTION_NODE", "TEXT_NODE", "appendChild", "baseURI", "childNodes", "cloneNode", "compareDocumentPosition", "constructor", "contains", "firstChild", "hasChildNodes", "insertBefore", "isDefaultNamespace", "isEqualNode", "isSameNode", "lastChild", "lookupNamespaceURI", "lookupPrefix", "nextSibling", "nodeName", "nodeType", "nodeValue", "normalize", "ownerDocument", "parentElement", "parentNode", "previousSibling", "removeChild", "replaceChild", "textContent"]
(Firefox.46):
> Object.getOwnPropertyNames(Node.prototype).sort()
["ATTRIBUTE_NODE", "CDATA_SECTION_NODE", "COMMENT_NODE", "DOCUMENT_FRAGMENT_NODE", "DOCUMENT_NODE", "DOCUMENT_POSITION_CONTAINED_BY", "DOCUMENT_POSITION_CONTAINS", "DOCUMENT_POSITION_DISCONNECTED", "DOCUMENT_POSITION_FOLLOWING", "DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC", "DOCUMENT_POSITION_PRECEDING", "DOCUMENT_TYPE_NODE", "ELEMENT_NODE", "ENTITY_NODE", "ENTITY_REFERENCE_NODE", "NOTATION_NODE", "PROCESSING_INSTRUCTION_NODE", "TEXT_NODE", "appendChild", "baseURI", "childNodes", "cloneNode", "compareDocumentPosition", "constructor", "contains", "firstChild", "hasChildNodes", "insertBefore", "isDefaultNamespace", "isEqualNode", "lastChild", "localName", "lookupNamespaceURI", "lookupPrefix", "namespaceURI", "nextSibling", "nodeName", "nodeType", "nodeValue", "normalize", "ownerDocument", "parentElement", "parentNode", "prefix", "previousSibling", "removeChild", "replaceChild", "textContent"]
(Edge.20):
> Object.getOwnPropertyNames(Node.prototype).sort()
[51 members]
(Safari.5-1-7):
> Object.getOwnPropertyNames(Node.prototype).sort()
["adoptNode", "caretRangeFromPoint", "createAttribute", "createAttributeNS", "createCDATASection", "createComment", "createDocumentFragment", "createElement", "createElementNS", "createEntityReference", "createEvent", "createExpression", "createNSResolver", "createNodeIterator", "createProcessingInstruction", "createRange", "createTextNode", "createTreeWalker", "elementFromPoint", "evaluate", "execCommand", "getCSSCanvasContext", "getElementById", "getElementsByClassName", "getElementsByName", "getElementsByTagName", "getElementsByTagNameNS", "getOverrideStyle", "getSelection", "importNode", "queryCommandEnabled", "queryCommandIndeterm", "queryCommandState", "queryCommandSupported", "queryCommandValue", "querySelector", "querySelectorAll", "webkitCancelFullScreen"]
Specific::
* Attr.prototype,
* CharacterData.prototype,
* Document.prototype,
* DocumentFragment.prototype,
* DocumentType.prototype,
* Element.prototype,
description::
Attr.prototype
is the-generic-object of oAttr
[1] objectof Attr
constructor, which[1] represents HML-attributes.
name::
* McsEngl.Attr.prototype,
* McsEngl.lagJsbr'Attr.prototype,
Whole-chain::
* Attr-function,
* window,
generic-chain::
* Node.prototype, (Attr.prototype.__proto__ === Node.prototype //true
)
* EventTarget.prototype,
* Object.prototype,
Member:
// Chrome.61 Object.getOwnPropertyNames(Attr.prototype).sort()).join(', '))
[constructor, localName, name, namespaceURI, ownerElement, prefix, specified, value]
// Object.getOwnPropertyNames(Attr.prototype.__proto__).sort()).join(', '))
[ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, appendChild, baseURI, childNodes, cloneNode, compareDocumentPosition, constructor, contains, firstChild, getRootNode, hasChildNodes, insertBefore, isConnected, isDefaultNamespace, isEqualNode, isSameNode, lastChild, lookupNamespaceURI, lookupPrefix, nextSibling, nodeName, nodeType, nodeValue, normalize, ownerDocument, parentElement, parentNode, previousSibling, removeChild, replaceChild, textContent]
// Object.getOwnPropertyNames(Attr.prototype.__proto__.__proto__).sort()).join(', '))
[addEventListener, constructor, dispatchEvent, removeEventListener]
// Object.getOwnPropertyNames(Attr.prototype.__proto__.__proto__.__proto__).sort()).join(', '))
[__defineGetter__, __defineSetter__, __lookupGetter__, __lookupSetter__, __proto__, constructor, hasOwnProperty, isPrototypeOf, propertyIsEnumerable, toLocaleString, toString, valueOf]
===
(Chrome.50):
> Object.getOwnPropertyNames(Attr.prototype).sort()
["constructor", "localName", "name", "namespaceURI", "nodeValue", "ownerElement", "prefix", "specified", "textContent", "value"]
(Firefox.46):
> Object.getOwnPropertyNames(Attr.prototype).sort()
["constructor", "localName", "name", "namespaceURI", "ownerElement", "prefix", "specified", "value"]
(Edge.20):
> Object.getOwnPropertyNames(Attr.prototype).sort()
[]
(Safari.5-1-7):
> Object.getOwnPropertyNames(Attr.prototype).sort()
[]
description::
CharacterData.prototype
is the-generic-object of Comment.prototype
and Text.prototype
.
name::
* McsEngl.CharacterData.prototype-JavascriptBrowser,
* McsEngl.lagJsbr'CharacterData.prototype,
Whole-chain::
* CharacterData-function,
* window,
generic-chain::
* Node.prototype,
* EventTarget.prototype,
* Object.prototype,
Member:
(Chrome.50):
> Object.getOwnPropertyNames(CharacterData.prototype).sort()
["appendData", "constructor", "data", "deleteData", "insertData", "length", "nextElementSibling", "previousElementSibling", "remove", "replaceData", "substringData"]
(Firefox.46):
> Object.getOwnPropertyNames(CharacterData.prototype).sort()
["appendData", "constructor", "data", "deleteData", "insertData", "length", "nextElementSibling", "previousElementSibling", "remove", "replaceData", "substringData"]
(Edge.20):
> Object.getOwnPropertyNames(CharacterData.prototype).sort()
[]
(Safari.5-1-7):
> Object.getOwnPropertyNames(CharacterData.prototype).sort()
[]
description::
DocumentFragment.prototype
is the-generic-object of oDocumentFragment
[1] objectof DocumentFragment
constructor, which[1] represents a PART of an-HML-document.
Using oDocumentFragments instead of the whole HML-document (document
) increases processing speed.
name::
* McsEngl.DocumentFragment.prototype-JavascriptBrowser,
* McsEngl.lagJsbr'DocumentFragment.prototype,
Whole-chain::
* DocumentFragment-function,
* window,
generic-chain::
* Node.prototype,
* EventTarget.prototype,
* Object.prototype,
Member:
// Chrome.61 Object.getOwnPropertyNames(DocumentFragment.prototype).sort()).join(', '))
[append, childElementCount, children, constructor, firstElementChild, getElementById, lastElementChild, prepend, querySelector, querySelectorAll]
// Object.getOwnPropertyNames(DocumentFragment.prototype.__proto__).sort()).join(', '))
[ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, appendChild, baseURI, childNodes, cloneNode, compareDocumentPosition, constructor, contains, firstChild, getRootNode, hasChildNodes, insertBefore, isConnected, isDefaultNamespace, isEqualNode, isSameNode, lastChild, lookupNamespaceURI, lookupPrefix, nextSibling, nodeName, nodeType, nodeValue, normalize, ownerDocument, parentElement, parentNode, previousSibling, removeChild, replaceChild, textContent]
// Object.getOwnPropertyNames(DocumentFragment.prototype.__proto__.__proto__).sort()).join(', '))
[addEventListener, constructor, dispatchEvent, removeEventListener]
// Object.getOwnPropertyNames(DocumentFragment.prototype.__proto__.__proto__.__proto__).sort()).join(', '))
[__defineGetter__, __defineSetter__, __lookupGetter__, __lookupSetter__, __proto__, constructor, hasOwnProperty, isPrototypeOf, propertyIsEnumerable, toLocaleString, toString, valueOf]
===
(Chrome.50):
> Object.getOwnPropertyNames(DocumentFragment.prototype).sort()
["childElementCount", "children", "constructor", "firstElementChild", "getElementById", "lastElementChild", "querySelector", "querySelectorAll"]
(Firefox.46):
> Object.getOwnPropertyNames(DocumentFragment.prototype).sort()
["childElementCount", "children", "constructor", "firstElementChild", "getElementById", "lastElementChild", "querySelector", "querySelectorAll"]
(Edge.20):
> Object.getOwnPropertyNames(DocumentFragment.prototype).sort()
[]
(Safari.5-1-7):
> Object.getOwnPropertyNames(DocumentFragment.prototype).sort()
[]
description::
DocumentType.prototype
is the-generic-object of oDocumentType
[1] objectof DocumentType
constructor, which[1] represents a-doctype HML-element.
name::
* McsEngl.DocumentType.prototype-JavascriptBrowser,
* McsEngl.lagJsbr'DocumentType.prototype,
Whole-chain::
* DocumentType-function,
* window,
generic-chain::
* Node.prototype,
* EventTarget.prototype,
* Object.prototype,
Member:
// Chrome.61 Object.getOwnPropertyNames(DocumentType.prototype).sort()).join(', '))
[after, before, constructor, name, publicId, remove, replaceWith, systemId]
// Object.getOwnPropertyNames(DocumentType.prototype.__proto__).sort()).join(', '))
[ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, appendChild, baseURI, childNodes, cloneNode, compareDocumentPosition, constructor, contains, firstChild, getRootNode, hasChildNodes, insertBefore, isConnected, isDefaultNamespace, isEqualNode, isSameNode, lastChild, lookupNamespaceURI, lookupPrefix, nextSibling, nodeName, nodeType, nodeValue, normalize, ownerDocument, parentElement, parentNode, previousSibling, removeChild, replaceChild, textContent]
// Object.getOwnPropertyNames(DocumentType.prototype.__proto__.__proto__).sort()).join(', '))
[addEventListener, constructor, dispatchEvent, removeEventListener]
// Object.getOwnPropertyNames(DocumentType.prototype.__proto__.__proto__.__proto__).sort()).join(', '))
[__defineGetter__, __defineSetter__, __lookupGetter__, __lookupSetter__, __proto__, constructor, hasOwnProperty, isPrototypeOf, propertyIsEnumerable, toLocaleString, toString, valueOf]
===
(Chrome.50):
> Object.getOwnPropertyNames(DocumentType.prototype).sort()
["constructor", "name", "publicId", "remove", "systemId"]
(Firefox.46):
> Object.getOwnPropertyNames(DocumentType.prototype).sort()
["constructor", "name", "publicId", "remove", "systemId"]
(Edge.20):
> Object.getOwnPropertyNames(DocumentType.prototype).sort()
[]
(Safari.5-1-7):
> Object.getOwnPropertyNames(DocumentType.prototype).sort()
[]
description::
Element.prototype
[1] is the-generic-object of HTMLElement.prototype
.
It[1] contains important members for the-objects that represent HML-elements.
name::
* McsEngl.Element.prototype-JavascriptBrowser,
* McsEngl.lagJsbr'Element.prototype,
Whole-chain::
* Element-function,
* window,
generic-chain::
* Node.prototype,
* EventTarget.prototype,
* Object.prototype,
Member:
// Chrome.61 Object.getOwnPropertyNames(Element.prototype).sort()).join(', '))
[after, animate, append, assignedSlot, attachShadow, attributes, before, childElementCount, children, classList, className, clientHeight, clientLeft, clientTop, clientWidth, closest, constructor, createShadowRoot, firstElementChild, getAttribute, getAttributeNS, getAttributeNames, getAttributeNode, getAttributeNodeNS, getBoundingClientRect, getClientRects, getDestinationInsertionPoints, getElementsByClassName, getElementsByTagName, getElementsByTagNameNS, hasAttribute, hasAttributeNS, hasAttributes, hasPointerCapture, id, innerHTML, insertAdjacentElement, insertAdjacentHTML, insertAdjacentText, lastElementChild, localName, matches, namespaceURI, nextElementSibling, onbeforecopy, onbeforecut, onbeforepaste, oncopy, oncut, onpaste, onsearch, onselectstart, onwebkitfullscreenchange, onwebkitfullscreenerror, outerHTML, prefix, prepend, previousElementSibling, querySelector, querySelectorAll, releasePointerCapture, remove, removeAttribute, removeAttributeNS, removeAttributeNode, replaceWith, requestPointerLock, scroll, scrollBy, scrollHeight, scrollIntoView, scrollIntoViewIfNeeded, scrollLeft, scrollTo, scrollTop, scrollWidth, setAttribute, setAttributeNS, setAttributeNode, setAttributeNodeNS, setPointerCapture, shadowRoot, slot, tagName, webkitMatchesSelector, webkitRequestFullScreen, webkitRequestFullscreen]
// Object.getOwnPropertyNames(Element.prototype.__proto__).sort()).join(', '))
[ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, appendChild, baseURI, childNodes, cloneNode, compareDocumentPosition, constructor, contains, firstChild, getRootNode, hasChildNodes, insertBefore, isConnected, isDefaultNamespace, isEqualNode, isSameNode, lastChild, lookupNamespaceURI, lookupPrefix, nextSibling, nodeName, nodeType, nodeValue, normalize, ownerDocument, parentElement, parentNode, previousSibling, removeChild, replaceChild, textContent]
// Object.getOwnPropertyNames(Element.prototype.__proto__.__proto__).sort()).join(', '))
[addEventListener, constructor, dispatchEvent, removeEventListener]
// Object.getOwnPropertyNames(Element.prototype.__proto__.__proto__.__proto__).sort()).join(', '))
[__defineGetter__, __defineSetter__, __lookupGetter__, __lookupSetter__, __proto__, constructor, hasOwnProperty, isPrototypeOf, propertyIsEnumerable, toLocaleString, toString, valueOf]
===
(Chrome.50):
> Object.getOwnPropertyNames(Element.prototype).sort()
["animate", "attributes", "childElementCount", "children", "classList", "className", "clientHeight", "clientLeft", "clientTop", "clientWidth", "closest", "constructor", "createShadowRoot", "firstElementChild", "getAttribute", "getAttributeNS", "getAttributeNode", "getAttributeNodeNS", "getBoundingClientRect", "getClientRects", "getDestinationInsertionPoints", "getElementsByClassName", "getElementsByTagName", "getElementsByTagNameNS", "hasAttribute", "hasAttributeNS", "hasAttributes", "id", "innerHTML", "insertAdjacentElement", "insertAdjacentHTML", "insertAdjacentText", "lastElementChild", "localName", "matches", "namespaceURI", "nextElementSibling", "onbeforecopy", "onbeforecut", "onbeforepaste", "oncopy", "oncut", "onpaste", "onsearch", "onselectstart", "onwebkitfullscreenchange", "onwebkitfullscreenerror", "onwheel", "outerHTML", "prefix", "previousElementSibling", "querySelector", "querySelectorAll", "remove", "removeAttribute", "removeAttributeNS", "removeAttributeNode", "requestPointerLock", "scrollHeight", "scrollIntoView", "scrollIntoViewIfNeeded", "scrollLeft", "scrollTop", "scrollWidth", "setAttribute", "setAttributeNS", "setAttributeNode", "setAttributeNodeNS", "shadowRoot", "tagName", "webkitMatchesSelector", "webkitRequestFullScreen", "webkitRequestFullscreen"]
(Firefox.46):
> Object.getOwnPropertyNames(Element.prototype).sort()
["attributes", "childElementCount", "children", "classList", "className", "clientHeight", "clientLeft", "clientTop", "clientWidth", "closest", "constructor", "firstElementChild", "getAttribute", "getAttributeNS", "getAttributeNames", "getAttributeNode", "getAttributeNodeNS", "getBoundingClientRect", "getClientRects", "getElementsByClassName", "getElementsByTagName", "getElementsByTagNameNS", "hasAttribute", "hasAttributeNS", "hasAttributes", "id", "innerHTML", "insertAdjacentHTML", "lastElementChild", "matches", "mozMatchesSelector", "mozRequestFullScreen", "mozRequestPointerLock", "nextElementSibling", "onwheel", "outerHTML", "previousElementSibling", "querySelector", "querySelectorAll", "releaseCapture", "remove", "removeAttribute", "removeAttributeNS", "removeAttributeNode", "scroll", "scrollBy", "scrollHeight", "scrollIntoView", "scrollLeft", "scrollLeftMax", "scrollTo", "scrollTop", "scrollTopMax", "scrollWidth", "setAttribute", "setAttributeNS", "setAttributeNode", "setAttributeNodeNS", "setCapture", "tagName", "webkitMatchesSelector"]
(Edge.20):
> Object.getOwnPropertyNames(Element.prototype).sort()
[]
(Safari.5-1-7):
> Object.getOwnPropertyNames(Element.prototype).sort()
[]
Specific::
* HTMLElement.prototype,
description::
HTMLElement.prototype
[1] is the-generic-object of the-objects that represent HML-elements.
name::
* McsEngl.HTMLElement.prototype.JavascriptBrowser,
* McsEngl.lagJsbr'HTMLElement.prototype,
Whole-chain::
* HTMLElement-function,
* window,
generic-chain::
* Element.prototype,
* Node.prototype,
* EventTarget.prototype,
* Object.prototype,
Member:
// Chrome.61 Object.getOwnPropertyNames(HTMLElement.prototype).sort()).join(', '))
[accessKey, blur, click, constructor, contentEditable, dataset, dir, draggable, focus, hidden, innerText, isContentEditable, lang, nonce, offsetHeight, offsetLeft, offsetParent, offsetTop, offsetWidth, onabort, onauxclick, onblur, oncancel, oncanplay, oncanplaythrough, onchange, onclick, onclose, oncontextmenu, oncuechange, ondblclick, ondrag, ondragend, ondragenter, ondragleave, ondragover, ondragstart, ondrop, ondurationchange, onemptied, onended, onerror, onfocus, ongotpointercapture, oninput, oninvalid, onkeydown, onkeypress, onkeyup, onload, onloadeddata, onloadedmetadata, onloadstart, onlostpointercapture, onmousedown, onmouseenter, onmouseleave, onmousemove, onmouseout, onmouseover, onmouseup, onmousewheel, onpause, onplay, onplaying, onpointercancel, onpointerdown, onpointerenter, onpointerleave, onpointermove, onpointerout, onpointerover, onpointerup, onprogress, onratechange, onreset, onresize, onscroll, onseeked, onseeking, onselect, onstalled, onsubmit, onsuspend, ontimeupdate, ontoggle, onvolumechange, onwaiting, onwheel, outerText, spellcheck, style, tabIndex, title, translate]
// Object.getOwnPropertyNames(HTMLElement.prototype.__proto__).sort()).join(', '))
[after, animate, append, assignedSlot, attachShadow, attributes, before, childElementCount, children, classList, className, clientHeight, clientLeft, clientTop, clientWidth, closest, constructor, createShadowRoot, firstElementChild, getAttribute, getAttributeNS, getAttributeNames, getAttributeNode, getAttributeNodeNS, getBoundingClientRect, getClientRects, getDestinationInsertionPoints, getElementsByClassName, getElementsByTagName, getElementsByTagNameNS, hasAttribute, hasAttributeNS, hasAttributes, hasPointerCapture, id, innerHTML, insertAdjacentElement, insertAdjacentHTML, insertAdjacentText, lastElementChild, localName, matches, namespaceURI, nextElementSibling, onbeforecopy, onbeforecut, onbeforepaste, oncopy, oncut, onpaste, onsearch, onselectstart, onwebkitfullscreenchange, onwebkitfullscreenerror, outerHTML, prefix, prepend, previousElementSibling, querySelector, querySelectorAll, releasePointerCapture, remove, removeAttribute, removeAttributeNS, removeAttributeNode, replaceWith, requestPointerLock, scroll, scrollBy, scrollHeight, scrollIntoView, scrollIntoViewIfNeeded, scrollLeft, scrollTo, scrollTop, scrollWidth, setAttribute, setAttributeNS, setAttributeNode, setAttributeNodeNS, setPointerCapture, shadowRoot, slot, tagName, webkitMatchesSelector, webkitRequestFullScreen, webkitRequestFullscreen]
// Object.getOwnPropertyNames(HTMLElement.prototype.__proto__.__proto__).sort()).join(', '))
[ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE, appendChild, baseURI, childNodes, cloneNode, compareDocumentPosition, constructor, contains, firstChild, getRootNode, hasChildNodes, insertBefore, isConnected, isDefaultNamespace, isEqualNode, isSameNode, lastChild, lookupNamespaceURI, lookupPrefix, nextSibling, nodeName, nodeType, nodeValue, normalize, ownerDocument, parentElement, parentNode, previousSibling, removeChild, replaceChild, textContent]
// Object.getOwnPropertyNames(HTMLElement.prototype.__proto__.__proto__.__proto__).sort()).join(', '))
[addEventListener, constructor, dispatchEvent, removeEventListener]
// Object.getOwnPropertyNames(HTMLElement.prototype.__proto__.__proto__.__proto__.__proto__).sort()).join(', '))
[__defineGetter__, __defineSetter__, __lookupGetter__, __lookupSetter__, __proto__, constructor, hasOwnProperty, isPrototypeOf, propertyIsEnumerable, toLocaleString, toString, valueOf]
===
(Chrome.50):
> Object.getOwnPropertyNames(HTMLElement.prototype).sort()
["accessKey", "blur", "click", "constructor", "contentEditable", "dataset", "dir", "draggable", "focus", "hidden", "innerText", "isContentEditable", "lang", "offsetHeight", "offsetLeft", "offsetParent", "offsetTop", "offsetWidth", "onabort", "onautocomplete", "onautocompleteerror", "onblur", "oncancel", "oncanplay", "oncanplaythrough", "onchange", "onclick", "onclose", "oncontextmenu", "oncuechange", "ondblclick", "ondrag", "ondragend", "ondragenter", "ondragleave", "ondragover", "ondragstart", "ondrop", "ondurationchange", "onemptied", "onended", "onerror", "onfocus", "oninput", "oninvalid", "onkeydown", "onkeypress", "onkeyup", "onload", "onloadeddata", "onloadedmetadata", "onloadstart", "onmousedown", "onmouseenter", "onmouseleave", "onmousemove", "onmouseout", "onmouseover", "onmouseup", "onmousewheel", "onpause", "onplay", "onplaying", "onprogress", "onratechange", "onreset", "onresize", "onscroll", "onseeked", "onseeking", "onselect", "onshow", "onstalled", "onsubmit", "onsuspend", "ontimeupdate", "ontoggle", "onvolumechange", "onwaiting", "outerText", "spellcheck", "style", "tabIndex", "title", "translate", "webkitdropzone"]
(Firefox.46):
> Object.getOwnPropertyNames(HTMLElement.prototype).sort()
["accessKey", "accessKeyLabel", "blur", "click", "constructor", "contentEditable", "contextMenu", "dataset", "dir", "draggable", "focus", "hidden", "innerText", "isContentEditable", "itemId", "itemProp", "itemRef", "itemScope", "itemType", "itemValue", "lang", "offsetHeight", "offsetLeft", "offsetParent", "offsetTop", "offsetWidth", "onabort", "onblur", "oncanplay", "oncanplaythrough", "onchange", "onclick", "oncontextmenu", "oncopy", "oncut", "ondblclick", "ondrag", "ondragend", "ondragenter", "ondragleave", "ondragover", "ondragstart", "ondrop", "ondurationchange", "onemptied", "onended", "onerror", "onfocus", "oninput", "oninvalid", "onkeydown", "onkeypress", "onkeyup", "onload", "onloadeddata", "onloadedmetadata", "onloadstart", "onmousedown", "onmouseenter", "onmouseleave", "onmousemove", "onmouseout", "onmouseover", "onmouseup", "onmozfullscreenchange", "onmozfullscreenerror", "onmozpointerlockchange", "onmozpointerlockerror", "onpaste", "onpause", "onplay", "onplaying", "onprogress", "onratechange", "onreset", "onresize", "onscroll", "onseeked", "onseeking", "onselect", "onshow", "onstalled", "onsubmit", "onsuspend", "ontimeupdate", "onvolumechange", "onwaiting", "properties", "spellcheck", "style", "tabIndex", "title"]
(Edge.20):
> Object.getOwnPropertyNames(Element.prototype).sort()
[]
(Safari.5-1-7):
> Object.getOwnPropertyNames(HTMLElement.prototype).sort()
[]
Specific::
* HTMLAnchorElement.prototype,
** oHTMLAnchorElement,
* HTMLAreaElement.prototype,
** oHTMLAreaElement,
* HTMLAudioElement.prototype,
** oHTMLAudioElement,
* HTMLBRElement.prototype,
** oHTMLBRElement,
* HTMLBaseElement.prototype,
** oHTMLBaseElement,
* HTMLBodyElement.prototype,
** oHTMLBodyElement,
* HTMLButtonElement.prototype,
** oHTMLButtonElement,
* HTMLCanvasElement.prototype,
** oHTMLCanvasElement,
* HTMLContentElement.prototype,
** oHTMLContentElement,
* HTMLDListElement.prototype,
** oHTMLDListElement,
* HTMLDataListElement.prototype,
** oHTMLDataListElement,
* HTMLDetailsElement.prototype,
** oHTMLDetailsElement,
* HTMLDialogElement.prototype,
** oHTMLDialogElement,
* HTMLDirectoryElement.prototype,
** oHTMLDirectoryElement,
* HTMLDivElement.prototype,
** oHTMLDivElement,
* HTMLEmbedElement.prototype,
** oHTMLEmbedElement,
* HTMLFieldSetElement.prototype,
** oHTMLFieldSetElement,
* HTMLFontElement.prototype,
** oHTMLFontElement,
* HTMLFormElement.prototype,
** oHTMLFormElement,
* HTMLFrameElement.prototype,
** oHTMLFrameElement,
* HTMLFrameSetElement.prototype,
** oHTMLFrameSetElement,
* HTMLHRElement.prototype,
** oHTMLHRElement,
* HTMLHeadElement.prototype,
** oHTMLHeadElement,
* HTMLHeadingElement.prototype,
** oHTMLHeadingElement,
* HTMLHtmlElement.prototype,
** oHTMLHtmlElement,
* HTMLIFrameElement.prototype,
** oHTMLIFrameElement,
* HTMLImageElement.prototype,
** oHTMLImageElement,
* HTMLInputElement.prototype,
** oHTMLInputElement,
* HTMLKeygenElement.prototype,
** oHTMLKeygenElement,
* HTMLLIElement.prototype,
** oHTMLLIElement,
* HTMLLabelElement.prototype,
** oHTMLLabelElement,
* HTMLLegendElement.prototype,
** oHTMLLegendElement,
* HTMLLinkElement.prototype,
** oHTMLLinkElement,
* HTMLMapElement.prototype,
** oHTMLMapElement,
* HTMLMarqueeElement.prototype,
** oHTMLMarqueeElement,
* HTMLMediaElement.prototype,
** oHTMLMediaElement,
* HTMLMenuElement.prototype,
** oHTMLMenuElement,
* HTMLMetaElement.prototype,
** oHTMLMetaElement,
* HTMLMeterElement.prototype,
** oHTMLMeterElement,
* HTMLModElement.prototype,
** oHTMLModElement,
* HTMLOListElement.prototype,
** oHTMLOListElement,
* HTMLObjectElement.prototype,
** oHTMLObjectElement,
* HTMLOptGroupElement.prototype,
** oHTMLOptGroupElement,
* HTMLOptionElement.prototype,
** oHTMLOptionElement,
* HTMLOptionsCollection.prototype,
** oHTMLOptionsCollection,
* HTMLOutputElement.prototype,
** oHTMLOutputElement,
* HTMLParagraphElement.prototype,
** oHTMLParagraphElement,
* HTMLParamElement.prototype,
** oHTMLParamElement,
* HTMLPictureElement.prototype,
** oHTMLPictureElement,
* HTMLPreElement.prototype,
** oHTMLPreElement,
* HTMLProgressElement.prototype,
** oHTMLProgressElement,
* HTMLQuoteElement.prototype,
** oHTMLQuoteElement,
* HTMLScriptElement.prototype,
** oHTMLScriptElement,
* HTMLSelectElement.prototype,
** oHTMLSelectElement,
* HTMLShadowElement.prototype,
** oHTMLShadowElement,
* HTMLSourceElement.prototype,
** oHTMLSourceElement,
* HTMLSpanElement.prototype,
** oHTMLSpanElement,
* HTMLStyleElement.prototype,
** oHTMLStyleElement,
* HTMLTableCaptionElement.prototype,
** oHTMLTableCaptionElement,
* HTMLTableCellElement.prototype,
** oHTMLTableCellElement,
* HTMLTableColElement.prototype,
** oHTMLTableColElement,
* HTMLTableElement.prototype,
** oHTMLTableElement,
* HTMLTableRowElement.prototype,
** oHTMLTableRowElement,
* HTMLTableSectionElement.prototype,
** oHTMLTableSectionElement,
* HTMLTemplateElement.prototype,
** oHTMLTemplateElement,
* HTMLTextAreaElement.prototype,
** oHTMLTextAreaElement,
* HTMLTitleElement.prototype,
** oHTMLTitleElement,
* HTMLTrackElement.prototype,
** oHTMLTrackElement,
* HTMLUListElement.prototype,
** oHTMLUListElement,
* HTMLUnknownElement.prototype,
** oHTMLUnknownElement,
* HTMLVideoElement.prototype,
** oHTMLVideoElement,
description::
· Css-processing-algo is an-lagJsbr-algo that processes Css.
name::
* McsEngl.Jsbralgo'Css-processing,
* McsEngl.Jsbralgo'Css-processing,
* McsEngl.Css-processing-algo-in-Javascript,
* McsEngl.Javascript'Css-processing-algo,
* McsEngl.lagJsbr'algo.Css,
addressWpg::
* {2018-12-10} Louis-Lazaris, An Introduction and Guide to the CSS Object Model (CSSOM), https://css-tricks.com/an-introduction-and-guide-to-the-css-object-model-cssom/,
description::
Communication between the-browser (client) and a-server.
name::
* McsEngl.Jsbralgo'server-communication,
* McsEngl.lagJsbr'server-communication,
* McsEngl.lagJsbr'code.server-communication,
* McsEngl.lagJsbr'server-communication,
addressWpg::
* {2013-10-29} Using CORS: https://www.html5rocks.com/en/tutorials/cors/,
description::
· the-Fetch-API provides an-interface for fetching resources (including across the-network).
· it will-seem familiar to anyone who has-used XMLHttpRequest, but the new API provides a more powerful and flexible feature set.
[https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API]
name::
* McsEngl.lagJsbr'fetch-Api,
* McsEngl.JsbrAPI'fetch,
addressWpg::
* https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API,
* examples: https://github.com/mdn/fetch-examples/,
description::
fetch(url) // the-url you want to access
.then(function() {
// code for handling the-response object
})
.catch(function() {
// code for handling server-errors
});
===
fetch('http://example.com/movies.json')
.then(response => response.json())
.then(data => console.log(data));
name::
* McsEngl.fetch-function//lagJsbr,
* McsEngl.lagJsbr'fetch-function,
description::
· the-object of this function is what we get from a-fetch-function.
name::
* McsEngl.lagJsbr'Response-function,
member-of-object::
>Object.getOwnPropertyNames(Response.prototype).sort()
(16) ["arrayBuffer", "blob", "body", "bodyUsed", "clone", "constructor", "formData", "headers", "json", "ok", "redirected", "status", "statusText", "text", "type", "url"]
addressWpg::
* https://developer.mozilla.org/en-US/docs/Web/API/Response,
description::
Use XMLHttpRequest objects to interact with servers. You can retrieve data from a URL without having to do a full page refresh. This enables a Web page to update just part of a page without disrupting what the user is doing. XMLHttpRequest is used heavily in AJAX programming.
History
XMLHttpRequest was originally designed by Microsoft and adopted by Mozilla, Apple, and Google. It's now being standardized at the WHATWG. Despite its name, XMLHttpRequest can be used to retrieve any type of data, not just XML, and it supports protocols other than HTTP (including file and ftp).
[https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest]
name::
* McsEngl.lagJsbr'XMLHttpRequest-function,
* McsEngl.XMLHttpRequest-constructor-of-Jsbr,
example::
oXHR = new XMLHttpRequest();
oXHR.open('GET', sUrl, true);
oXHR.send(null);
oXHR.onreadystatechange = function () {
if (oXHR.readyState === 4 && oXHR.status === 200) { //DONE, OK
//work on oXHR.responseText
}
}
generic::
* Jsgn-evaluation,
name::
* McsEngl.lagJsbr'03_evaluation,
* McsEngl.lagJsbr'evaluation,
Simplicity:
Its code is-created FROM only 11 semantic-units.
Whole-Part-management (modules):
Jsbr lacks a-mechanism of organizing its semantic-units into parts.
Like the 'prototype-inheritance' mechanism which manages the generic-specific relations, we need and a-mechanism to manage the whole-part relations.
Today, all its-constructs loaded from js-files reside, in a-mess, inside the-most-whole-object (global).
Now we can-create collections only with objects and arrays.
ECMAScript.6.2015 spec added this mechanism, but it is not implemented by the-browsers.
description::
There is no single technical specification that defines JavaScript, but a whole bunch of specifications.
The ECMAScript specification defines the core of the language: the basic language features, the syntax, the execution and the standard library. A new version of ECMAScript is published every year, and ECMAScript 2017, Edition 8, also called ECMAScript 8, is the latest at the time of writing.
With ECMAScript alone, you cannot do anything useful. For example, there is no way to read or output any data. ECMAScript does not define the so-called host environment in which a program is executed. It allows several possible host environments. An HTML document in the browser is one possible host environment. Node.js is another popular one.
The host environment we are interested in here is primarily defined in the HTML specification. It not only defines HTML as a markup language, it also defines how JavaScript is executed in the context of an HTML document. It defines how JavaScript can access and alter the document. For this purpose, it relies on yet another specification: the Document Object Model (DOM).
The HTML and DOM specifications define the main objects that client-side JavaScript is dealing with: nodes, elements and events. Fundamental objects include window, window.alert(), document, document.body, document.getElementById() and document.createElement().
There are a lot of other specifications that add more APIs to the browser’s JavaScript environment. The web platform: Browser technologies gives an overview.
[https://molily.de/robust-Javascript/#Javascript-standards]
name::
* McsEngl.lagJsbr'04_specification,
* McsEngl.lagJsbr'specification,
generic::
* Jsgn-tool,
name::
* McsEngl.lagJsbr'05_tool!⇒Jsbrtool,
* McsEngl.lagJsbr'tool!⇒Jsbrtool,
* McsEngl.Jsbrtool,
Resource:
* Chrome DevTools,
* Firebug,
generic::
* Jsgn-testing-tool,
name::
* McsEngl.lagJsbr'testing-tool,
* McsEngl.Jsbrtool.testing,
Resource:
* https://saucelabs.com/, Accelerate your software development and bring your great ideas to market faster with the world's largest automated testing cloud for web and mobile apps.
description::
· browser is the-program that displays webpages (understands HTML and CSS code) and executes Jsbr code.
===
· with hundreds of components running on different layers, from process-management and security-sandboxing to GPU-pipelines, audio and video, and many more, the-web-browser looks more like an-operating-system rather than just a-software-application.
[https://blog.sessionstack.com/how-Javascript-works-inside-the-networking-layer-how-to-optimize-its-performance-and-security-f71b7414d34c]
name::
* McsEngl.Jsbrtool.browser!⇒appBrowser,
* McsEngl.app.browser!⇒appBrowser,
* McsEngl.appBrowser, {2023-10-29},
* McsEngl.lagJsbr'06_browser!⇒appBrowser,
* McsEngl.lagJsbr'browser!⇒appBrowser,
* McsEngl.browser!⇒appBrowser,
* McsEngl.lagJsbr'browser!⇒appBrowser,
* McsEngl.lagJsbr'web-browser!⇒appBrowser,
* McsEngl.program.browser!⇒appBrowser,
* McsEngl.program.web-browser!⇒appBrowser,
* McsEngl.web-browser!⇒appBrowser,
====== langoGreek:
* McsElln.περιηγητής!ο!=appBrowser,
* McsElln.φυλλομετρητής!ο!=appBrowser,
description::
· layout-engine is the-component of the-browser-program that reads and displays the-Html and Css code of a-webpage.
name::
* McsEngl.appBrowser'graphical-engine,
* McsEngl.appBrowser'layout-engine,
* McsEngl.appBrowser'rendering-engine,
* McsEngl.browser-layout-engine,
* McsEngl.browser-rendering-engine,
* McsEngl.layout-engine-of-browser,
* McsEngl.rendering-engine-of-browser,
description::
* Blink (Chrome >28, Opera >15)
* EdgeHTML (Edge),
* Gecko (Firefox),
* WebKit (Safari),
description::
lagJsbr-engine is the-component of the-browser-program that reads and executes the-code.
===
Writing client-side JavaScript for the web differs from programming for other platforms. There is not one well-defined runtime environment a developer may count on. There is not one hardware architecture or device type. There is not a single vendor that defines and builds the runtime, the compiler and the tools.
The web is an open, vendor-independent, heterogenous publishing platform. It is held together by several technical standards of different quality. New standards appear frequently, old standards are amended or deprecated. Different standardization organizations follow different rules of procedure.
[https://molily.de/robust-Javascript/#the-browser-as-a-runtime-environment]
name::
* McsEngl.appBrowser'javascript-engine,
* McsEngl.appBrowser'engine,
* McsEngl.lagJsbr'engine,
* McsEngl.lagJsbr'engine,
* McsEngl.lagJsbr'implementation,
* McsEngl.lagJsbr'interpreter,
generic::
* Jsgn-binary-code,
name::
* McsEngl.lagJsbr'binary-doc,
* McsEngl.lagJsbr'binary-doc,
Specific::
* SpiderMondey (Firefox),
* V8 (Chrome),
description::
Webpage is an-Html-document, plus all other files needed, such as images, video, CSS, Jsbr, etc.
Browsers display webpages.
name::
* McsEngl.Webpage,
* McsEngl.Www'webpage!⇒Webpage,
* McsEngl.appBrowser'webpage!⇒Webpage,
* McsEngl.web-page!⇒Webpage,
Part::
* Html-document,
* CSS-code,
* lagJsbr-code,
* media-files,
Specific::
* Google-Chrome,
* Microsoft-Edge,
* Mozilla-Firefox,
* Safari,
* Opera,
===
* Desktop-browser,
* Mobile-browser,
name::
* McsEngl.lagJsbr'Infrsc,
AddressWpg::
* How JavaScript Works: https://blog.sessionstack.com/tagged/tutorial,
* https://caniuse.com/: "Can I use" provides up-to-date browser support tables for support of front-end web technologies on desktop and mobile web browsers. The site was built and is maintained by Alexis Deveria, with occasional updates provided by the web development community. The design used as of 2014 was largely created by Lennart Schoors,
=== Book:
* Robust Client-Side JavaScript: A Developer’s Guide: https://molily.de/robust-Javascript/,
generic-chain::
* Javascript-programing-language,
* programing-language,
* computer-language,
* mapping-method,
* method,
* info,
* model,
* entity,
this webpage was-visited times since {2016.05.04}
page-wholepath: synagonism.net / worldviewSngo / Javascript / lagJsbr
SEARCH THE-PAGE:
This page uses 'locator-names', names that when you find them, you find the-LOCATION of the-concept they denote.
Type CTRL+F "Mcs.[ljs|ljb|ljn]words-of-concept's-name", to go to the-LOCATION of the-concept.
There are about 400 sub-concepts in this concept (ebook) with 1,400 names and 14,000 lines of hitp-document.
Webpage-Versions:
• version.dynamic: McsTchInf000011.last.html,
• version.6-0-0.2021-04-09: (5-18) ../../dirMiwMcs/dirTchInf/filMcsLagJsbr.6-0-0.2021-04-09.html,
• version.5-0-0.2017-11-26.last: ../../dirMiwMcs/dirTchInf/FilMcsLjb.5-0-0.2017-11-26.html,
• version.4.2017-07-11: ../../dirMiwMcs/dirTchInf/McsTchInf000011.4.2017-07-11.html,
• version.3.2016-08-22 (2-4): ../../dirMiwMcs/dirTchInf/filCptLjs.3.2016-08-22.html,
• version.2.2016-08-04.ljs-ljn (1-33): ../../dirMiwMcs/dirTchInf/filCptLjs.2.2016-08-04.html,
• version.1-21.2016-05-26: ../../dirMiwMcs/dirTchInf/lngJs.1-21.2016-05-26.html,
• version.1-17.2016-05-23: ../../dirMiwMcs/dirTchInf/lngJs.1-17.2016-05-23.html,
• version.1-11.2016-05-18: ../../dirMiwMcs/dirTchInf/lngJs.1-11.2016-05-18.html,
• version.1.2016-05-10.ljb.created: ../../dirMiwMcs/dirTchInf/lngJs.1.2016-05-10.html,