Search completed in 2.07 seconds.
Troubleshooting XForms Forms - Archive of obsolete content
introduction the idea of this page is to collect some solutions to some of the common errors typically made when creating an x
forms form.
... always run your form through the x
forms validator.
... check the xhtml 1.0 namespace declaration mozilla x
forms is built upon the xhtml 1.0 specification, which is located at http://www.w3.org/1999/xhtml .
...And 5 more matches
XForms Custom Controls - Archive of obsolete content
purpose you are in the right place if you would like to create your own custom renderings of the x
forms controls like input, output, trigger, etc.
... we will also show you how to create custom controls that work with the x
forms model and are automatically updated just like x
forms controls.
...to really grasp the following information, a good understanding of x
forms, xbl, javascript and css is needed.
...And 54 more matches
XForms Accessibility
intoduction this article provides a quick guide to how accessibility is handled in gecko for x
forms..
... assistive technologies api for x
forms is supported starting from firefox 3 (gecko 1.9).
... implementation of accessible objects for x
forms elements is based on top of the existing object hierarchy introduced in the mozilla accessibility module.
...And 25 more matches
Mozilla XForms User Interface - Archive of obsolete content
introduction this article is a quick reference of the x
forms user interface elements.
... mainly this is aimed to document how x
forms elements will be presented in mozilla since the x
forms specifications give only a hint of how controls might be rendered.
... currently x
forms can be hosted by xhtml and xul in seamonkey and firefox.
...And 20 more matches
XForms - Archive of obsolete content
note: support for x
forms was removed from firefox in firefox 19.
... see the html
forms guide for approaches to creating
forms in html5.
... x
forms essentials an online book giving you a guided tour of x
forms.
...And 18 more matches
Mozilla XForms Specials - Archive of obsolete content
introduction this article gives an overview of where the mozilla x
forms extension deviates from the official x
forms 1.0 specification .
...pseudo-class support we currently support all the css pseudo-classes in x
forms (:enabled, :disabled, etc.
...instead you will have to use the following normal classes instead: xf-value xf-repeat-item xf-repeat-index for example, to target the value element of an input control use: @namespace xf url("http://www.w3.org/2002/x
forms"); xf|input .xf-value { ...
...And 13 more matches
Building Mozilla XForms - Archive of obsolete content
getting started things to know first: the x
forms extension has a dependency on the schema-validation extension, so you need to build both (that's done automatically) mozilla switched from cvs to mercurial starting with firefox 3.5.
... before you can start building the x
forms extension, you should check your mozilla build environment by doing a regular firefox build.
...the following table gives you an overview of which version you want to build: firefox version gecko/toolkit version source code notes status firefox 2.0 gecko 1.8.1 cvs, branch mozilla_1_8_branch not developed any more last release: 0.8.5ff2 firefox 3.0 gecko 1.9.0 cvs, branch head not developed any more last release: 0.8.5ff3 firefox 3.5 gecko 1.9.1 x
forms/schema-validation code does not build with firefox 3.5 any more not supported firefox 3.6 gecko 1.9.2 x
forms/schema-validation code does not build with firefox 3.6 any more not developed any more last release: 0.8.6 firefox 4 gecko 2.0 mercurial, repositories mozilla-central x
forms schema-validation mostly works upcoming 0.8.7 release if you have your first working firefox build, you ca...
...And 9 more matches
RFE to the XForms API - Archive of obsolete content
introduction this page contains requests for enhancement to the x
forms api.
... the term x
forms api can fall into two categories.
... these are x
forms dom and x
forms interfaces that are exposed by x
forms dom.
...And 9 more matches
Styling web forms - Learn web development
previous overview:
forms next in the previous few articles we looked at all the html you'll need to create and structure your web
forms.
... objective: to understand the issues behind styling
forms, and learn some of the basic styling techniques that will be useful to you.
... and even with css available to style html, browser vendors have historically been reluctant to make form controls stylable because users were so accustomed to the visual appearance of their respective plat
forms.
...And 6 more matches
Web forms — Working with user data - Learn web development
this module provides a series of articles that will help you master the essentials of web
forms.
... web
forms are a very powerful tool for interacting with users — most commonly they are used for collecting data from users, or allowing them to control a user interface.
...in the articles listed below, we'll cover all the essential aspects of web
forms including marking up their html structure, styling form controls, validating form data, and submitting data to the server.
...And 6 more matches
TransformStream - Web APIs
the trans
formstream interface of the streams api represents a set of transformable data.
... constructor trans
formstream() creates and returns a transform stream object from the given handlers.
... properties trans
formstream.readable read only the readable end of a trans
formstream.
...And 6 more matches
WebGL2RenderingContext.getActiveUniforms() - Web APIs
the webgl2renderingcontext.getactiveuni
forms() method of the webgl 2 api retrieves information about active uni
forms within a webglprogram.
... syntax any gl.getactiveuni
forms(program, uniformindices, pname); parameters program a webglprogram containing the active uni
forms.
... uniformindices an array of gluint specifying the indices of the active uni
forms to query.
...And 6 more matches
Document.forms - Web APIs
the
forms read-only property of the document interface returns an htmlcollection listing all the <form> elements contained in the document.
... syntax collection = document.
forms; value an htmlcollection object listing all of the document's
forms.
... if the document has no
forms, the returned collection is empty, with a length of zero.
...And 5 more matches
Using CSS transforms - CSS: Cascading Style Sheets
by modifying the coordinate space, css trans
forms change the shape and position of the affected content without disrupting the normal document flow.
... this guide provides an introduction to using trans
forms.
... css trans
forms are implemented using a set of css properties that let you apply affine linear transformations to html elements.
...And 5 more matches
XForms Input Element - Archive of obsolete content
introduction this element is an important and oft-used x
forms element to show and change the instance data to which this x
forms control is bound (see the spec).
... attributes ui common appearance - the value of this attribute gives a hint to the x
forms processor as to which type of widget(s) to use to represent this control accesskey - used to specify the keyboard shortcut for focusing this control single-node binding special inputmode - not supported for this control incremental - supported.
...representations the x
forms input element can be represented by the following widgets for the spcified data types (or types derived from these data types): text field - the default widget when no type is specified or the data is of type xsd:string (xhtml/xul) checkbox - used for xsd:boolean instance data.
...And 4 more matches
HTML forms in legacy browsers - Learn web development
make things simple because html
forms involves complex interaction, there is one rule of thumb: keep it simple, also known as the "kiss principal".
... there are so many cases where we want
forms that are "nicer" or "with advanced functionality", but building efficient html
forms is not a question of design or technology.
...the tutorial,
forms usability on ux for the masses, explains it well.
...And 4 more matches
nsIXFormsModelElement
extensions/x
forms/nsix
formsmodelelement.idlscriptable defines scriptable methods for manipulating instance data and updating computed and displayed values.
... rebuild() signals the x
forms processor to rebuild any internal data structures used to track computational dependencies within the given x
forms model.
...recalculate() signals the x
forms processor to perform a full recalculation of the given x
forms model.
...And 4 more matches
XForms Styling - Archive of obsolete content
hopefully someone more proficient in mozilla x
forms and css can clean this up repeats see the mozilla x
forms specials page for some general points.
... triggers use appearance="minimal" to be able to style buttons portability the mozilla x
forms extension is one of the few x
forms processors which allow for styling of the x
forms elements directly, using mostly standard css.
... processors such as chiba create "old-style" html
forms from x
forms documents, and must be styled accordingly.
...And 3 more matches
XForms Repeat Element - Archive of obsolete content
attributes ui common appearance - the value of this attribute gives a hint to the x
forms processor as to which type of widget(s) to use to represent this control.
... actions you can use x
forms action module elements to modify the nodeset that the repeat element is bound to.
...lineset')" position="after"/> <setvalue ref="/my:lines/my:line[index('lineset')]/@name"/> <setvalue ref="/my:lines/my:line[index('lineset')]/price">0.00</setvalue> </action> </trigger> <trigger> <label>remove current item</label> <delete ev:event="domactivate" nodeset="/my:lines/my:line" at="index('lineset')"/> </trigger> attribute based repeat when using x
forms within host languages like xhtml, it is often necessary to create repeating structures within constructs such as html:table.
...And 3 more matches
Porting NSPR to Unix Platforms - Archive of obsolete content
last modified 16 july 1998 <<< under construction >>> unix plat
forms are probably the easiest plat
forms to port netscape portable runtime (nspr) to.
...for certain more "standard" unix plat
forms, this may be all you have to do.
... on other plat
forms, you may need to do extra work to deal with their idiosyncrasies.
...And 2 more matches
nsIXFormsNSInstanceElement
nsix
formsnsinstanceelement is implemented by all x
forms <instance/> elements, defining mozilla extensions.
... extensions/x
forms/nsix
formsnsinstanceelement.idlscriptable please add a summary to this article.
... last changed in gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) interface code [scriptable, uuid(80669b92-8331-4f92-aaf8-06e80e6827b3)] interface nsix
formsnsinstanceelement : nsisupports { nsidomdocument getinstancedocument(); }; methods getinstancedocument nsidomdocument getinstancedocument(); getinstancedocument returns a dom document that corresponds to the instance data associated with the instance element.
...And 2 more matches
nsIXFormsNSModelElement
nsix
formsnsmodelelement is implemented by all x
forms <model/> elements.
... it defines mozilla extensions to the nsix
formsmodelelement interface.
... extensions/x
forms/nsix
formsnsmodelelement.idlscriptable please add a summary to this article.
...And 2 more matches
XForms Alert Element - Archive of obsolete content
the alert element's message can also be displayed immediately after the containing form control element in the x
forms document's layout.
... examples <x
forms:model> <x
forms:instance> <data xmlns=""> <x>10</x> </data> </x
forms:instance> <x
forms:bind id="x" nodeset="x" type="xsd:integer"/> </x
forms:model> <style> @namespace x
forms url("http://www.w3.org/2002/x
forms"); x
forms|input:invalid x
forms|alert.inline { display: inline; font-style: italic; width: 40%; } } </style> <x
forms:input bind="x"> <x
forms:label>you can type only numbers (validation happens on blur): </x
forms:label> <x
forms:alert>wrong value!
... you should type only numbers!</x
forms:alert> </x
forms:input> <x
forms:input bind="x"> <x
forms:label>you can type only numbers (validation happens on blur): </x
forms:label> <x
forms:alert class="inline">wrong value!
... you should type only numbers!</x
forms:alert> </x
forms:input> ...
XForms Output Element - Archive of obsolete content
attributes ui common appearance - the value of this attribute gives a hint to the x
forms processor as to which type of widget(s) to use to represent this control accesskey - used to specify the keyboard shortcut for focusing this control single-node binding special value - xpath expression whose evaluation result is used as the output's value.
... representations the x
forms output element can be represented by the following widgets for the specified data types (or types derived from these data types): text - default representation for instance data of most types, especially static text (xhtml/xul).
...x
forms output is most often used when a form author needs to render simple text of an instance node (xhtml/xul).
... analogous widgets are <xhtml:span/> and <xul:description/> calendar a form author may notice a x
forms output element represented by a calendar widget in the mozilla x
forms processor if the control meets the following criteria (xhtml/xul).
XForms Select Element - Archive of obsolete content
attributes ui common appearance - the value of this attribute gives a hint to the x
forms processor as to which type of widget(s) to use to represent this control.
...the data binding restriction to simple content may be relaxed when an itemset element is used, which allows the available choices to be obtained from an x
forms model.
... representations the x
forms select element can be represented by the following widgets for the specified appearance attribute values: list - default representation (xhtml/xul) check group- used when appearance = 'full' (xhtml/xul) list displaying a listbox is the default representation (xhtml/xul).
... <xf:value>pg</xf:value> </xf:item> <xf:item> <xf:label>green</xf:label> <xf:value>g</xf:value> </xf:item> </xf:choices> <xf:choices> <xf:label>red colors</xf:label> <xf:item> <xf:label>red</xf:label> <xf:value>r</xf:value> </xf:item> <xf:item> <xf:label>magenta</xf:label> <xf:value>m</xf:value> </xf:item> </xf:choices> </x
forms:select> ...
XForms Submit Element - Archive of obsolete content
upon receiving a domactivate event, this form control dispatches a x
forms-submit event to the submission element (see the spec) specified in its submission attibute.
... attributes ui common appearance - the value of this attribute gives a hint to the x
forms processor as to which type of widget(s) to use to represent this control.
...representations the x
forms submit element can be represented by the following widgets for the specified appearance attribute values: button - default representation (xhtml/xul) link/clickable text - used when appearance = 'minimal' (xhtml only) button displaying a button is the default presentation (xhtml/xul).
... characteristics analogous widgets are <html:input type="submit"/> and <xul:button/> link/clickable text x
forms authors can use this representation if they want to have a widget like a xhtml anchor (xhtml only).
XForms Trigger Element - Archive of obsolete content
actions are described by the x
forms action module (see the spec).
... attributes ui common appearance - the value of this attribute gives a hint to the x
forms processor as to which type of widget(s) to use to represent this control accesskey - used to specify the keyboard shortcut for focusing this control single-node binding type restrictions the trigger element can be bound to a node containing data of any type.
... representations the x
forms trigger element can be represented by the following widgets for the specified appearance attribute values: button - default representation (xhtml/xul) link/clickable text - used when appearance = 'minimal' (xhtml only) button displaying a button is the default presentation (xhtml/xul).
... characteristics analogous widgets are <html:input type="button"/> and <xul:button/> link/clickable text x
forms authors can use this representation if they want to have a widget like a xhtml anchor (xhtml only).
Sending forms through JavaScript - Learn web development
html
forms can send an http request declaratively.
... but
forms can also prepare an http request to send via javascript, for example via xmlhttprequest.
... a form is not always a form with progressive web apps, single page apps, and framework based apps, it's common to use html
forms to send data without loading a new document when response data is received.
... many modern uis only use html
forms to collect input from the user, and not for data submission.
CSS Transforms - CSS: Cascading Style Sheets
css trans
forms is a module of css that defines how elements styled with css can be transformed in two-dimensional or three-dimensional space.
... reference properties backface-visibility perspective perspective-origin rotate scale transform transform-box transform-origin transform-style translate data types <transform-function> guides using css trans
forms step-by-step tutorial about how to transform elements styled with css.
... specifications specification status comment css trans
forms level 1 working draft initial definition.
... css trans
forms level 2 editor's draft adds individual trans
forms.
XForms API Reference - Archive of obsolete content
this page is the beginning of the x
forms api reference.
... note the word beginning :-) naming convention the x
forms interfaces has the following naming convention: nsix
forms...element interfaces implemented by the c++ part of a control nsix
formsns...element interfaces extending x
forms specification interfaces nsix
forms...uielement interfaces implemented by the js part of a control nsix
forms...accessors interface exposing states about the bound instance node for a given control frozen interfaces nsix
formsmodelelement the model interface experimental interfaces nsix
formsdelegate the delegate interface for x
forms:custom_controls nsix
formsaccessors the accessors interface for x
forms:custom_controls nsix
formsnsmodelelement custom extens...
...ion(s) to the nsix
formsmodelelement interface nsix
formsnsinstanceelement custom extension(s) to the instance element ...
Developing Mozilla XForms - Archive of obsolete content
debugging always start with a debug build of the x
forms and the schema-validation extensions.
... see building mozilla x
forms for a .mozconfig for debug builds.
...then start firefox out of the build directory: cd obj-*/dist/firefox ./firefox -no-remote -jsconsole -p yourprofilename the x
forms extension that was built together with firefox should be already installed.
XForms Label Element - Archive of obsolete content
introduction specifies the label (short description) for the x
forms control (see the spec).
... ui behavior accesskey support - if the accesskey attribute is specified on labeled x
forms controls or on the label element itself then the label text for the control will contain an indicator as to what the access key is in a standard way.
... representations the x
forms label element is represented by the text retrieved from instance data, a document or the label element's own inline content.
XForms Range Element - Archive of obsolete content
single-node binding special incremental - supported, default value is false start - lower bound of possible values end - upper bound of possible values step - is used for incrementing/decrementing values start/end/step attributes if the value of the bound instance node is outside the range of values specified by the start and end attributes, then the range element receives a x
forms-out-of-range event.
... if the bound value then becomes in range, the range element receives a x
forms-in-range event.
... representations the x
forms range element is represented by a slider widget (xhtml only).
XForms Select1 Element - Archive of obsolete content
attributes ui common appearance - the value of this attribute gives a hint to the x
forms processor as to which type of widget(s) to use to represent this control.
...the data binding restriction to simple content may be relaxed when an itemset element is used, which allows the available choices to be obtained from an x
forms model.
... representations the x
forms select1 element can be represented by the following widgets for the specified appearance attribute values: combobox - default representation (xhtml/xul) listbox - used when appearance = 'compact' (xhtml/xul) radio group - used when appearance = 'full' (xhtml/xul) combobox displaying a combobox is the default representation (xhtml/xul).
XForms Config Variables - Archive of obsolete content
a description of the about:config preferences that x
forms uses.
... preference default description x
forms.disablepopup false disables x
forms engine popup error messages x
forms.enableexperimentalfeatures false enable experimental features.
... for now it only enables the x
forms 1.1 soap action feature, and only on trunk.
Using XForms and PHP - Archive of obsolete content
introduction a few tips on using x
forms and php together.
... returning xml data to either serve a page (with x
forms in it) or to generate data used as instance data for x
forms, the page needs to be served as xml, for example application/xhtml+xml.
...to really use the power of x
forms (/xml) you would probably submit xml.
XForms Custom Controls Examples - Archive of obsolete content
a full example showing a complete form can be found on x
forms:custom_controls.
... output showing images <binding id="output-image" extends="chrome://x
forms/content/x
forms.xml#x
formswidget-base"> <content> <html:div> <html:img anonid="content"/> </html:div> </content> <implementation implements="nsix
formsuiwidget"> <method name="refresh"> <body> var img = document.getanonymouselementbyattribute(this, "anonid", "content"); img.setattribute("src", this.stringvalue); return true; </body> </method> </implementation> </binding> output showing xhtml <binding id="output-xhtml" extends="chrome://x
forms/content/x
forms-xhtml.xml#x
formswidget-output"> <content> <children includes="label"/> <xhtml:div class="xf-value" anonid="content"></xhtml:div> <children/> </content> <implementation implements="nsix
formsuiwidg...
XForms Upload Element - Archive of obsolete content
the x
forms author can set the filter by using the mediatype attribute directly on the upload element or by placing a mediatype element (see the spec) as a direct child of the upload element.
... representations the x
forms upload element is represented by visually combining three widgets: a text field that shows the uri of the selected file, a button to open the file picker dialog which allows the user to select a file, and a button to clear the text field and the reference to the file from the bound node (xhtml only).
Forms related code snippets - Archive of obsolete content
(before implementing it in a working environment, please read the note about the const statement compatibility) <!doctype html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>datepicker example - mdn</title> <script type="text/javascript"> /*\ |*| |*| datepicker example mdndeveloper network |*| |*| https://developer.mozilla.org/docs/code_snippets/
forms |*| https://developer.mozilla.org/user:fusionchess |*| |*| this snippet is released under the gnu public license, version 3 or later.
Forms - Accessibility
the following pages provide various techniques for improving the accessibility of web
forms: basic form hints: adding hints and descriptions for invalid or required fields alerts: using alerts to provide client-side validation error messages multi-part labels: enabling complex form labels with a control inside each label see also the yahoo!
Index - Archive of obsolete content
found 3833 pages: # page tags and summary 1 archive of obsolete content archive, landing here at mdn, we try to avoid outright deleting content that might be useful to people targeting legacy plat
forms, operating systems, and browsers.
... 187
forms related code snippets code snippets,
forms no summary!
... 565 mozprocess mozprocess provides python process management via an operating system and platform transparent interface to mozilla plat
forms of interest.
...And 50 more matches
Index - Web APIs
initially defined in the dom level 2 style recommendation, these interfaces
forms now a specification, css object model (cssom) which aims at superseding it.
... 415 cssmatrix api, reference a cssmatrix represents a homogeneous 4x4 matrix to which 2d or 3d trans
forms can be applied.
... 663 convolvernode api, convolvernode, interface, reference, web audio api the convolvernode interface is an audionode that per
forms a linear convolution on a given audiobuffer, often used to achieve a reverb effect.
...And 41 more matches
HTML documentation index - HTML: Hypertext Markup Language
19 inputmode attribute, editing,
forms, global attributes, html, input, reference, text, web, contenteditable, global, inputmode, text input the inputmode global attribute is an enumerated attribute that hints at the type of data that might be entered by the user while editing the element or its contents.
...each name-value pair is called a property, and a group of one or more properties
forms an item.
... 46 html attribute: readonly attribute, attributes, constraint validation,
forms, required the boolean readonly attribute, when present, makes the element not mutable, meaning the user can not edit the control.
...And 40 more matches
Index - Learn web development
7 html: a good basis for accessibility at, accessibility, article, beginner, buttons, codingscripting,
forms, html, learn, links, a11y, assistive technology, keyboard, screenreader, semantics you should now be well-versed in writing accessible html for most occasions.
... 120 images, media, and form elements beginner, css,
forms, images, learn, media, replaced content this lesson has highlighted some of the differences you will encounter when working with images, media, and other unusual elements in css.
... 271 adding a new todo form: vue events, methods, and models beginner,
forms, frameworks, javascript, learn, methods, client-side, events, models, vue excellent.
...And 32 more matches
Localization and Plurals
if you're here to make your code (e.g., extensions) localizable for plural
forms, you can jump straight to developing with pluralform.
... plural form: for a particular plural rule, there can be multiple
forms of a word, such as "page" and "pages".
... in this case, there are 2
forms, but other languages can have 1 or many more.
...And 29 more matches
Implementation Status - Archive of obsolete content
mozilla x
forms is not actively maintained any more since about 2010!
... limitations and extensions the extension has some limitations and custom extension to the x
forms 1.1 specification.
... these can be found on the mozilla x
forms specials page.
...And 20 more matches
nsIAccessibleProvider
xultext 0x0000101a xultextbox 0x0000101b xulthumb 0x0000101c xultree 0x0000101d xultreecolumns 0x0000101e xultreecolumnitem 0x0000101f xultoolbar 0x00001020 xultoolbarseparator 0x00001021 xultooltip 0x00001022 xultoolbarbutton 0x00001023 x
forms elements constants constant value description x
formscontainer 0x00002000 used for x
forms elements that provide accessible object for itself as well for anonymous content.
... this property is used for upload, input[type="xsd:gday"] and input[type="xsd:gmonth"] x
formslabel 0x00002001 used for label element.
... x
formsouput 0x00002002 used for output element.
...And 16 more matches
Requests For Enhancement - Archive of obsolete content
introduction the purpose of this page is to gather requests for enhancement to the mozilla x
forms implementation.
... if you have an idea that might improve mozilla's x
forms implementation then you should choose one of the following rfe categories and put your request there.
... you can also contact the x
forms team about your request.
...And 15 more matches
Your first form - Learn web development
overview:
forms next the first article in our series provides you with your very first experience of creating a web form, including designing a simple form, implementing it using the right html form controls and other html elements, adding some very simple styling via css, and describing how data is sent to a server.
... objective: to gain familiarity with what web
forms are, what they are used for, how to think about designing them, and the basic html elements you'll need for simple cases.
... what are web
forms?
...And 12 more matches
OS.File for the main thread
to specify options, pass an object that may contain some of the following flags: unixflags (ignored under non-unix plat
forms) if specified, file opening flags, as per libc function open.
... unixmode (ignored under non-unix plat
forms) if specified, file creation mode, as per libc function open.
... winshare (ignored under non-windows plat
forms) if specified, a sharing policy, as per windows function createfile.
...And 11 more matches
Game distribution - Game development
you don't need to have separate teams to work on the same title targeting different plat
forms with only one code base to worry about.
...you can put your html5 games into the same arena (see native desktop, later on) and you should because it's good to diversify the plat
forms you support, but you have to remember that developers creating desktop games have years of experience, great tools and stable distribution channels.
... saying this, desktop plat
forms can be used for distribution quite easily with the availability of wrappers that can help you prepare native builds of your game see packaging games.
...And 10 more matches
Index
in order to allow interoperability between software and devices that perform cryptographic operations, nss con
forms to a standard called pkcs#11.
...instead of simply verifying that the requester of a certificate is in control of an administrative email address at the desired web site's domain, it's required that the ca per
forms a verification of real world identity documents (such as a company registration document with the country's authority), and it's also required that a browser software per
forms a revocation check with the ca, prior to granting validity to the certificate.
...because nss is a cross-platform library that builds on many different plat
forms and has many options, it may be complex to build.
...And 10 more matches
How to structure a web form - Learn web development
previous overview:
forms next with the basics out of the way, we'll now look in more detail at the elements used to provide structure and meaning to the different parts of a form.
... objective: to understand how to structure html
forms and give them semantics so they are usable and accessible.
... the flexibility of
forms makes them one of the most complex structures in html; you can build any kind of basic form using dedicated form elements and attributes.
...And 9 more matches
Index
javascript per
forms automatic garbage collection of objects, strings, and doubles.
...js_destroycontext additionally per
forms garbage collection to reclaim any memory that was being used by cx's global object.
... 276 js_gc jsapi reference, spidermonkey js_gc per
forms garbage collection of js objects, strings and other internal data structures that are no longer reachable in the specified context or runtime.
...And 9 more matches
Advanced form styling - Learn web development
previous overview:
forms next in this article, we will see what can be done with css to style the types of form control that are more difficult to style — the "bad" and "ugly" categories.
... objective: to understand what parts of
forms are hard to style, and why; to learn what can be done to customize them.
... the road to nicer
forms: useful libraries and polyfills as we've mentioned above a few times, if you want to gain full control over the "ugly" control types, you have no choice but to rely on javascript.
...And 8 more matches
The Joy of XUL - Archive of obsolete content
considering the broad range of plat
forms that currently support mozilla, this may be one of the most compelling features of xul as a technology for building applications.
...the user interface for all of mozilla's core applications (browser, messenger, address book, etc.) is written in xul with one single code base supporting all mozilla plat
forms.
... by using xbl, developers can easily build custom user interface widgets such as progress meters, fancy pop-up menus, and even toolbars and search
forms.
...And 7 more matches
64-bit Compatibility
the following types or typedefs are always 64-bit on 64-bit plat
forms, and 32-bit on 32-bit plat
forms: pointers uintptr_t, intptr_t, ptrdiff_t, (probably) size_t jsval jsuword, jsword length of a string, though the actual length cannot exceed 30 bits jsuintptr, jsintptr, jsptrdiff, jsuptrdiff, jssize, jsuword, jsword (let's not use these, kthx) the following types are 32-bit on 32-bit plat
forms.
... for all intents and purposes they are also 32-bit on 64-bit plat
forms: intn, uintn jsintn, jsuintn, jsbool general problems with pointers when performing bitwise operations on pointer values, make sure that both operands are 64-bit.
...builtins and calls when passing arguments to lirwriter::inscall(), there are four types: argsize_f - floating point value argsize_i - 32-bit integer argsize_q - 64-bit integer argsize_p - 32-bit integer on 32-bit plat
forms, 64-bit integer on 64-bit plat
forms.
...And 7 more matches
nsIFile
with an nsifile you can navigate to ancestors or descendants without having to deal with the different path separators used on different plat
forms, query the state of any file or directory at the position represented by the nsifile and create, move or copy items in the filesystem.
... all methods with string parameters have two
forms.
...therefore, the utf-16
forms are scriptable, but the "native methods" are not.
...And 7 more matches
WebGL model view projection - Web APIs
clip space in a webgl program, data is typically uploaded to the gpu with its own coordinate system and then the vertex shader trans
forms those points into a special coordinate system known as clip space.
...this matrix represents the transformations to be performed on every point making up the model in order to move it into the correct space, and to perform any other needed trans
forms on each point in the model.
...rix = function(now) { //scale down by 50% var scale = mdn.scalematrix(0.5, 0.5, 0.5); // rotate a slight tilt var rotatex = mdn.rotatexmatrix(now * 0.0003); // rotate according to time var rotatey = mdn.rotateymatrix(now * 0.0005); // move slightly down var position = mdn.translatematrix(0, -0.1, 0); // multiply together, make sure and read them in opposite order this.trans
forms.model = mdn.multiplyarrayofmatrices([ position, // step 4 rotatey, // step 3 rotatex, // step 2 scale // step 1 ]); }; in order to use this in the shader it must be set to a uniform location.
...And 7 more matches
Introduction to Public-Key Cryptography - Archive of obsolete content
to get a student id, you apply to a school or college, which per
forms different checks (such as whether you have paid your tuition) before issuing the id.
... certificates work much the same way as any of these familiar
forms of identification.
...the methods used to validate an identity vary depending on the policies of a given ca-just as the methods to validate other
forms of identification vary depending on who is issuing the id and the purpose for which it will be used.
...And 6 more matches
Client-side form validation - Learn web development
previous overview:
forms next before submitting data to the server, it is important to ensure all required form controls are filled out, in the correct format.
... we want to make filling out web
forms as easy as possible.
... so why do we insist on validating our
forms?
...And 6 more matches
NSS tools : modutil
for example: plat
forms { linux:5.4.08:x86 { modulename { "example pkcs #11 module" } modulefile { crypto.so } defaultmechanismflags{0x0000} cipherenableflags{0x0000} files { crypto.so { path{ /tmp/crypto.so } } setup.sh { executable path{ /tmp/setup.sh } } } } linux:6.0.0:x86 { equivalentplatform { linux:5.4.08:x86 } } } both the install script and the required libraries must be bundled in a jar fi...
...multiple plat
forms can be defined in a single install file.
... forwardcompatible { irix:6.2:mips sunos:5.5.1:sparc } plat
forms { winnt::x86 { modulename { "example module" } modulefile { win32/fort32.dll } defaultmechanismflags{0x0001} defaultcipherflags{0x0001} files { win32/setup.exe { executable relativepath { %temp%/setup.exe } } win32/setup.hlp { relativepath { %temp%/setup.hlp } } win32/setup.cab { relativepath { %temp%/setup.cab } } } } win95::x86 { equivalentplatform {winnt::x86} } sunos:5.5.1:sparc { modulename { "example unix module" } modulefile { unix/fort.so } defaultmechanismflags{0x0001} cipherenableflags{0x0001} files { unix/fort.so { relativepath{%root%/lib/fort.so} absolutepath{/usr/local/netscape/lib/fort.so} filepermissions{555} } xplat/instr.html { relativepath{%root%/docs/inst.html} absolutepath{/...
...And 6 more matches
NSS tools : modutil
for example: plat
forms { linux:5.4.08:x86 { modulename { "example pkcs #11 module" } modulefile { crypto.so } defaultmechanismflags{0x0000} cipherenableflags{0x0000} files { crypto.so { path{ /tmp/crypto.so } } setup.sh { executable path{ /tmp/setup.sh } } } } linux:6.0.0:x86 { equ...
...multiple plat
forms can be defined in a single install file.
... forwardcompatible { irix:6.2:mips sunos:5.5.1:sparc } plat
forms { winnt::x86 { modulename { "example module" } modulefile { win32/fort32.dll } defaultmechanismflags{0x0001} defaultcipherflags{0x0001} files { win32/setup.exe { executable relativepath { %temp%/setup.exe } } win32/setup.hlp { relativepath { %temp%/setup.hlp } } win32/setup.cab { relativepath { %temp%/setup.cab } } } } win95::x86 { equivalentplatform {winnt::x86} } sunos:5.5.1:sparc { modulename { "example unix module" } modulefile { unix/fort.so } defaultmechanismflags{0x0001} cipherenableflags{0x0001} files { ...
...And 6 more matches
HTMLFormElement - Web APIs
usage notes obtaining a form element object to obtain an htmlformelement object, you can use a css selector with queryselector(), or you can get a list of all of the
forms in the document using its
forms property.
... document.
forms returns an array of htmlformelement objects listing each of the
forms on the page.
... you can then use any of the following syntaxes to get an individual form: document.
forms[index] returns the form at the specified index into the array of
forms.
...And 6 more matches
sslfnc.html
nss_init nss_initreadwrite nss_nodb_init ssl_optionsetdefault ssl_optiongetdefault ssl_cipherprefsetdefault ssl_cipherprefgetdefault ssl_clearsessioncache ssl_configserversessionidcache ssl_configmpserversidcache ssl_inheritmpserversidcache nss_init sets up configuration files and per
forms other tasks required to run network security services.
... nss_initreadwrite sets up configuration files and per
forms other tasks required to run network security services.
... nss_nodb_init per
forms tasks required to run network security services without setting up configuration files.
...And 5 more matches
NSS Tools modutil
if so, the metainfo file for the netscape signing tool would include a line such as this: + pkcs11_install_script: pk11install the sample script file could contain the following: forwardcompatible { irix:6.2:mips sunos:5.5.1:sparc }plat
forms { winnt::x86 { modulename { "fortezza module" } modulefile { win32/fort32.dll } defaultmechanismflags{0x0001} defaultcipherflags{0x0001} files { win32/setup.exe { executable relativepath { %temp%/setup.exe } } win32/setup.hlp { relativepath { %temp%/setup.hlp } } win32/setup.cab { relati...
...this section discusses the following keys: global keysper-platform keysper-file keys global keys forwardcompatible gives a list of plat
forms that are forward compatible.
... if the current platform cannot be found in the list of supported plat
forms, then the forwardcompatible list is checked for any plat
forms that have the same os and architecture in an earlier version.
...And 5 more matches
Index
while xpcom components written in a scripting language (such as javascript) can be moved across plat
forms (such as windows and os x) without adaptation, those written in a compiled language (such as c++) require recompilation when moving to a different platform.
... 255 doaction this method per
forms the accessible action at the given zero-based index.
...this information is most commonly used to update a user interface that in
forms the user as to the status of an update.
...And 5 more matches
Using XMLHttpRequest - Web APIs
submitting
forms and uploading files instances of xmlhttprequest can be used to submit
forms in two ways: using only ajax using the formdata api using the formdata api is the simplest and fastest, but has the disadvantage that data collected can not be stringified.
... using nothing but xmlhttprequest submitting
forms without the formdata api does not require other apis for most use cases.
...therefore, how to send
forms in pure ajax is too complex to be explained here in detail.
...And 5 more matches
Accessibility documentation index - Accessibility
8
forms aria, accessibility the following pages provide various techniques for improving the accessibility of web
forms: 9 alerts aria, accessibility,
forms, web you have a form — a contact form, for example — that you want to put some accessible error checking into.
... 10 basic form hints aria, accessibility,
forms when implementing
forms using traditional html form-related elements, it is important to provide labels for controls, and explicitly associate a label with its control.
... 30 using the article role aria, accessible, needscontent the article role is used to identify a section of a page that
forms an independent part of a document, page or site.
...And 5 more matches
passwords - Archive of obsolete content
for example, if the realm for a credential is "user registration", then its "site" field will look something like: addon:jid0-01mbbfyu0zaxcfub1jykoostkic (user registration) html form credential if a web service uses html
forms to authenticate its users, then the corresponding credential is an html form credential.
...
formsubmiturl the value of the form's "action" attribute.
...om/login with the following html: <form action="http://login.example.com/foo/authenticate.cgi"> <div>please log in.</div> <label>username:</label> <input type="text" name="uname"> <label>password:</label> <input type="password" name="pword"> </form> the corresponding values for the credential (excluding username and password) should be: url: "http://www.example.com"
formsubmiturl: "http://login.example.com" usernamefield: "uname" passwordfield: "pword" note that for both url and
formsubmiturl, the portion of the url after the hostname is omitted.
...And 4 more matches
Mozilla Application Framework in Detail - Archive of obsolete content
customized xul applications with significant business logic can be written once, and used on the range of plat
forms that exist within the organization.
... the gecko rendering engine gecko is the revolutionary rendering engine that offers advanced features for internet browsing anywhere across applications, computing plat
forms and devices.
...small, fast and standards compliant, gecko is easily embeddable across plat
forms in browsers, desktop applications and browsing devices and delivers full-functionality browsing to them all.
...And 4 more matches
Basic native form controls - Learn web development
previous overview:
forms next in the previous article, we marked up a functional web form example, introducing some form controls and common structural elements, and focusing on accessibility best practices.
...if you want a more advanced reference, you should consult our html
forms element reference, and in particular our extensive <input> types reference.
... note: the <input> element is unique amongst html elements because it can take many different
forms depending on its type attribute value.
...And 4 more matches
Handling common HTML and CSS problems - Learn web development
html5 form elements also exhibit fallback qualities — html5 introduced some special <input> types for inputting specific information into
forms, such as times, dates, colors, numbers, etc.
... these are very useful, particularly on mobile plat
forms, where providing a pain-free way of entering data is very important for the user experience.
... supporting plat
forms provide special ui widgets when these input types are used, such as a calendar widget for entering dates.
...And 4 more matches
IME handling guide
this is a technical term from windows but these days, this is used on other plat
forms as well.
...additionally, ime may be used for handwriting systems or speech input systems on some plat
forms.
... on some plat
forms, ime may support its own style for each clause.
...And 4 more matches
Build instructions
ns_use_gcc: on plat
forms where gcc is not the native compiler, tells nss to build with gcc instead of the native compiler.
... use_64: on plat
forms that support both 32-bit and 64-bit abis, tells nss to build for the 64-bit abi.
... default is 32-bit abi, except on plat
forms that do not support a 32-bit abi.
...And 4 more matches
nsIAccessibleRole
the role is used by xul:browsermessage, role="alert", x
forms:message.
...it is used for xul:label@class="text-link", html:a, html:area, x
forms:trigger@appearance="minimal".
...is is used for xul:label, xul:description, html:label, role="label", or x
forms:output.
...And 4 more matches
nsILoginInfo
to create an instance, use: var logininfo = components.classes["@mozilla.org/login-manager/logininfo;1"] .createinstance(components.interfaces.nsilogininfo); method overview nsilogininfo clone(); boolean equals(in nsilogininfo alogininfo); void init(in astring ahostname, in astring a
formsubmiturl, in astring ahttprealm, in astring ausername, in astring apassword, in astring ausernamefield, in astring apasswordfield); boolean matches(in nsilogininfo alogininfo, in boolean ignorepassword); attributes attribute type description
formsubmiturl astring the origin, not url, a form-based login was submitted to.
... for logins obtained from html
forms, this field is the action attribute from the form element, with the path removed (for example, "https://www.site.com").
...
forms with no action attribute default to submitting to their origin url, so that is stored here.
...And 4 more matches
Variable fonts guide - CSS: Cascading Style Sheets
so the 'weight axis' describes how light or how bold the letter
forms can be; the 'width axis' describes how narrow or how wide they can be; the 'italic axis' describes if italic letter
forms are present and can be turned on or off accordingly, etc.
... weight weight (represented by the wght tag) defines the design axis of how thin or thick (light or heavy, in typical typographic terms) the strokes of the letter
forms can be.
... width width (represented by the wdth tag) defines the design axis of how narrow or wide (condensed or extended, in typographic terms) the letter
forms can be.
...And 4 more matches
Functions - JavaScript
a function in javascript is similar to a procedure—a set of statements that per
forms a task or calculates a value, but for a procedure to qualify as a function, it should take some input and return an output where there is some obvious relationship between the input and the output.
... calling the function actually per
forms the specified actions with the indicated parameters.
... it also
forms a closure.
...And 4 more matches
Localization - Archive of obsolete content
plurals the l10n module supports plural
forms.
...for example, english has two
forms: a singular form for "one", and a plural form for "everything else, including zero": one tomato no tomatoes two tomatoes but russian has different
forms for numbers ending in 1 (except 11), numbers ending in 2-4 (except 12-14) and other numbers: один помидор // one tomato два помидора // two tomatoes пять помидоров // five tomatoes the sdk uses the unicode cldr data to describe the different plural
forms used by different languages.
... unicode cldr plural
forms the unicode cldr project defines a scheme for describing a particular language's plural rules.
...And 3 more matches
Source code directories overview - Archive of obsolete content
there are also platform dependent subdirectories which contain source code for specific plat
forms.
...it
forms the c substructure which creates, destroys and manipulates built-in and user-defined objects according to the javascript script.
...these include: cookies, irc, wallet, dom inspector, p3p, schema validation, spellchecker, transformiix, typeaheadfind, javascript debugger, x
forms, etc.
...And 3 more matches
Mozilla release FAQ - Archive of obsolete content
regarding compilation options, it would be good not to compile with optimization, because it's much slower to build, and on windows plat
forms, there's a bug in some versions of vc++ that makes mozilla crash in many common circumstances if compiled with optimization on.
... what plat
forms have had successful builds so far?
... this list will be updated with time, but (according to netscape.public.mozilla.general) the following plat
forms have been built successfully: solaris 2.4, 2.5, 2.6 freebsd 2.2, 3.0 linux/intel and alpha 2.0, 2.1 macos winnt 4.0 irix 5.3, 6.2, 6.3, 6.4 win95, win98 digital unix 4.0 netbsd openbsd bsdi hp/ux 9.05, 10.20, 11.0 (see 2.7) hurd .03 dg/ux mac os x i'm *still* having problems getting mozilla to build on my platform!
...And 3 more matches
The Business Benefits of Web Standards - Archive of obsolete content
the blogging community are particularly dynamic in this respect where on many plat
forms including wordpress, textpattern and habari, the site theme is a complete and discrete entity in its own right.
... increase website traffic maintain contact with your user on multiple plat
forms standards-based code and cross-platform go hand in hand.
... while some browsers have quirks that cause different behavior by platform, mozilla-based browsers are designed to behave identically on all supported plat
forms (mac, linux, unix, windows...) web content is increasingly being accessed by a growing number of user agents other than browsers, or by browsers on different plat
forms - for example mobile telephones.
...And 3 more matches
Mobile accessibility - Learn web development
previous overview: accessibility next with web access on mobile devices being so popular and renowned plat
forms such as ios and android having full-fledged accessibility tools, it is important to consider the accessibility of your web content on these plat
forms.
... these days, mobile devices can usually handle fully-featured websites, and the main plat
forms even have screenreaders built in to enable visually impaired users to use them successfully.
... user input — make user input requirements as painless as possible on mobile (e.g., in
forms, keep typing to a minimum).
...And 3 more matches
Images, media, and form elements - Learn web development
form elements form elements can be a tricky issue when it comes to styling with css, and the web
forms module contains detailed guides to the trickier aspects of styling form elements, which i will not fully reproduce here.
...there are some additional elements, such as <textarea> for multiline text input, and also elements used to contain and label parts of
forms such as <fieldset> and <legend>.
...you should therefore always assume that
forms are going to look quite different for different visitors and test complex
forms in a number of browsers.
...And 3 more matches
Sending form data - Learn web development
previous overview:
forms once the form data has been validated on the client-side, it is okay to submit the form.
...it's more common to use one of the many high quality frameworks that make handling
forms easier, such as: django for python (a bit more heavyweight than flask, but with more tools and options).
... it's worth noting that even using these frameworks, working with
forms isn't necessarily easy.
...And 3 more matches
UI pseudo-classes - Learn web development
previous overview:
forms next in the previous articles, we covered the styling of various form controls, in a general manner.
...in this article, we will explore in detail the different ui pseudo-classes available to us in modern browsers for styling
forms in different states.
... objective: to understand what parts of
forms are hard to style, and why; to learn what can be done to customize them.
...And 3 more matches
The Firefox codebase: CSS Guidelines
writing cross-platform css firefox supports many different plat
forms and each of those plat
forms can contain many different configurations: windows 7, 8 and 10 default theme aero basic (windows 7, 8) windows classic (windows 7) high contrast (all versions) linux macos file structure the browser/ directory contains styles specific to firefox the toolkit/ directory contains styles that are shared across all toolkit applications (thunde...
...rbird and seamonkey) under each of those two directories, there is a themes directory containing 4 sub-directories: shared linux osx windows the shared directories contain styles shared across all 3 plat
forms, while the other 3 directories contain styles respective to their platform.
...theme css the following directories also contain css: browser/base/content/ toolkit/content/ these directories contain content css, that applies on all plat
forms, which is styling deemed to be essential for the browser to behave correctly.
...And 3 more matches
Named Shared Memory
some plat
forms may mangle the name before creating the file and the shared memory.
... limits on shared memory resources different plat
forms have limits on both the number and size of shared memory resources.
... the default system limits on some plat
forms may be smaller than your requirements.
...And 3 more matches
Introduction to Network Security Services
so the nss library has the following
forms: libnss3.so - unix shared library libnss3.sl - hp-ux shared library libnss.a - unix static library nss3.dll - windows shared library nss3.lib - windows import library binding to nss3.dll nss.lib - windows static library nss, ssl, and s/mime have all of the above
forms.
... support for ilp32 in nss 3.2 and later versions, there are two new shared libraries for the plat
forms hp-ux for parisc cpus and solaris for (ultra)sparc (not x86) cpus.
... these hp and solaris plat
forms allow programs that use the ilp32 program model to run on both 32-bit cpus and 64-bit cpus.
...And 3 more matches
Key Values - Web APIs
corresponding virtual keycodes for common plat
forms are included where available.
... appcommand_undo gdk_key_undo (0xff65) [1] on keyboards without a dedicated del key, the mac generates the "delete" value when fn is pressed in tandem with delete (which is backspace on other plat
forms).
...there are other keys defined by various plat
forms for korean keyboards, but these are the most common and are the ones identified by the ui events specification.
...And 3 more matches
WebGLRenderingContext.getActiveUniform() - Web APIs
it is generally used when querying unknown uni
forms either for debugging or generic library creation.
...this value is an index 0 to n - 1 as returned by gl.getprogramparameter(program, gl.active_uni
forms).
...cube gl.sampler_2d_shadow gl.sampler_2d_array gl.sampler_2d_array_shadow gl.sampler_cube_shadow gl.int_sampler_2d gl.int_sampler_3d gl.int_sampler_cube gl.int_sampler_2d_array gl.unsigned_int_sampler_2d gl.unsigned_int_sampler_3d gl.unsigned_int_sampler_cube gl.unsigned_int_sampler_2d_array when gl.linkprogram is called, webgl creates a list of active uni
forms.
...And 3 more matches
WebGLRenderingContext.getUniformLocation() - Web APIs
the name can't have any whitespace in it, and you can't use this function to get the location of any uni
forms starting with the reserved string "gl_", since those are internal to the webgl layer.
... the possible values correspond to the uniform names returned by getactiveuniform; see that function for specifics on how declared uni
forms map to uniform location names.
... additionally, for uni
forms declared as arrays, the following names are also valid: the uniform name without the [0] suffix.
...And 3 more matches
Viewpoints and viewers: Simulating cameras in WebXR - Web APIs
this is why the xrrigidtransform object used by webxr to represent trans
forms includes an inverse property.
... composing multiple trans
forms if your camera needs to be performing multiple trans
forms simultaneously, such as zooming and panning at the same time, you can multiply the transform matrices together to compose them into a single matrix that applies both changes at once.
...so you need to be careful about the order in which you apply your trans
forms when building your composite transform (or directly applying trans
forms in sequence).
...And 3 more matches
font-variant-ligatures - CSS: Cascading Style Sheets
the font-variant-ligatures css property controls which ligatures and contextual
forms are used in textual content of the elements it applies to.
... this leads to more harmonized
forms in the resulting text.
... values normal this keyword leads to the activation of the usual ligatures and contextual
forms needed for correct rendering.
...And 3 more matches
<input>: The Input (Form Input) element - HTML: Hypertext Markup Language
the html <input> element is used to create interactive controls for web-based
forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.
...a typical implementation of autocomplete simply recalls previous values entered in the same input field, but more complex
forms of autocomplete can exist.
... also see: styling html
forms, advanced styling for html
forms, and the compatibility table of css properties.
...And 3 more matches
Web video codec guide - Web media technologies
lossy compression to some degree, artifacts and other
forms of quality degradation wil occur, depending on the specific codec and how much compression is being applied the more the encoded video is allowed to deviate from the source, the easier it is to accomplish higher compression rates quality setting the higher the quality configuration, the more like the original media the encoded video will look in general, higher quality settings ...
...there are many
forms of aliasing; the most common ones you may see include: moiré patterns a unknown prefix: moiré pattern.
...these blocks are normally of a fixed size, in a grid, but there are
forms of motion compensation that allow for variable block sizes, and even for blocks to overlap.
...And 3 more matches
CSS3 - Archive of obsolete content
allow the styling of
forms according their content using the css :indeterminate, :default, :valid, :invalid, :in-range, :out-of-range, :required, :optional, :read-only, and :read-write pseudo-classes and the ::value, ::choices, ::repeat-item, and ::repeat-index pseudo-elements.
... css trans
forms level 1 working draft adds: the support of bi-dimensional trans
forms to be applied to any element using the css transform and transform-origin properties.
... the supported trans
forms are: matrix(), translate(), translatex(), translatey(), scale(), scalex(), scaley(), rotate(), skewx(), and skewy().
...And 2 more matches
Index of archived content - Archive of obsolete content
e bookmarks boxes canvas code snippets cookies customizing the download progress bar delayed execution dialogs and prompts downloading files drag & drop embedding svg examples and demos from articles file i/o finding window handles
forms related code snippets html in xul for rich tooltips html to dom isdefaultnamespace js xpcom javascript debugger service javascript timers javascript daemons management label and description lookupnamespaceuri lookupprefix ...
... new security model for web services new skin notes overview of how downloads work plug-n-hack plug-n-hack get involved plug-n-hack phase1 plug-n-hack phase2 plug-n-hack tools supported plugin architecture porting nspr to unix plat
forms priority content prism blogposts build bundlelibrary bundles configuration extensions faq hostwindow installer scripting styling proxy ui pydom rdf api rdf data...
... back to the server: server-side javascript on the rise sharp variables in javascript standards-compliant authoring tools stopiteration styling the amazing netscape fish cam page using javascript generators in firefox window.importdialog() writing javascript for xhtml x
forms building mozilla x
forms community developing mozilla x
forms implementation status mozilla x
forms specials mozilla x
forms user interface x
forms alert element x
forms group element x
forms help element x
forms hint element ...
...And 2 more matches
Audio for Web games - Game development
this article provides a detailed guide to implementing audio for web games, looking at what works currently across as wide a range of plat
forms as possible.
... mobile audio caveats by far the most difficult plat
forms to provide web audio support for are mobile plat
forms.
... unfortunately these are also the plat
forms that people often use to play games.
...And 2 more matches
Gecko FAQ - Gecko Redirect 1
gecko is reusable on all plat
forms thanks to xpcom, a subset of com that works across plat
forms.
... com, developed by digital and later adopted by microsoft, is the de facto standard for modular interfaces on windows plat
forms.
... additionally, on the windows platform, gecko's xpcom interfaces are wrapped in an activex control that vb developers can utilize (activex wrappers are not available on other plat
forms because activex is a windows-only technology).
...And 2 more matches
Localization content best practices
in modern english, such features are rare and are mainly restricted to plural -s and verb
forms (e.g.
... use proper plural
forms firefox supports proper plural
forms.
... as a native english speaker, you might find it natural to use delete-cookie = delete cookie delete-cookies = delete cookies in firefox this should be # localization note (delete-cookies): semi-colon list of plural
forms.
...And 2 more matches
gettext
plurals gettext lets you define and use singular and plural
forms of a string.
... the string definition in the messages.po file will look like this: #: file.php:3 #, php-format msgid "%d user likes this." msgid_plural "%d users like this." msgstr[0] "" msgstr[1] "" depending on the localizer's target language and its rules for creating plural
forms, there might be another field for translation, e.g.
...for example, for english, the plural rule is of the following form: plural-
forms: nplurals=2; plural=n != 1; the first part defines the number of different plural
forms (2).
...And 2 more matches
NSS FAQ
what plat
forms and development environments are supported?
... this section is out of date iplanet e-commerce solutions has certified nss 3.1 on 18 plat
forms, including aix 4.3, hp-ux 11.0, red hat linux 6.0, solaris (2.6 or later), windows nt (4.0 or later), and windows 2000.
... other contributors are in the process of certifying additional plat
forms.
...And 2 more matches
SpiderMonkey Internals
the representation is 64 bits and uses nan-boxing on all plat
forms, although the exact nan-boxing format depends on the platform.
...other values are encoded as a value and a type tag: on x86, arm, and similar 32-bit plat
forms, we use what we call "nunboxing", in which non-double values are a 32-bit type tag and a 32-bit payload, which is normally either a pointer or a signed 32-bit integer.
... on x64 and similar 64-bit plat
forms, pointers are longer than 32 bits, so we can't use the nunboxing format.
...And 2 more matches
Cognitive accessibility - Accessibility
distractions, such as unnecessary content or advertisements; providing consistent web page layout and navigation; incorporating familiar elements, such as underlined links that are blue when not visited and purple when visited; dividing processes into logical, essential steps with progress indicators; making website authentication as easy as possible without compromising security; and making
forms easy to complete, such as with clear error messages and simple error recovery.
...people with cognitive disabilities may require more time to read content, or to perform functions such as filling out
forms.
...examples of timed content include
forms, timed reading exercises, and training materials.
...And 2 more matches
Cross-browser audio basics - Developer guides
</audio> note: this value is often ignored on mobile plat
forms, and its use is not recommended unless really necessary.
...</audio> note: this value is often ignored on mobile plat
forms.
... note: this value is often ignored on mobile plat
forms.
...And 2 more matches
Codecs used by WebRTC - Web media technologies
cb is a subset of the main profile, and is specifically designed for low-complexity, low-delay applications such as mobile video and videoconferencing, as well as for plat
forms with lower performing video processing capabilities.
...in order to improve reliability of webrtc media sharing across multiple plat
forms and browsers, it's required that webrtc endpoints that support avc handle certain parameters in specific ways.
... bit rate recommendations given a 20 millisecond frame size, the following table shows the recommended bit rates for various
forms of media.
...And 2 more matches
SVG documentation index - SVG: Scalable Vector Graphics
25 arabic-form deprecated, svg, svg attribute the arabic-form attribute indicates which of the four possible
forms an arabic glyph represents.
...quality tradeoffs as it per
forms image processing.
... 240 version deprecated, svg, svg attribute the version attribute is used to indicate what specification a svg document con
forms to.
...And 2 more matches
Using XPInstall to Install Plugins - Archive of obsolete content
xpinstall is a javascript-based installer technology that works across all the plat
forms that mozilla and netscape browsers based on mozilla (such as netscape 7) are deployed.
...since the file format that contains the software and the install.js javascript file is a cross-platform file (zip) and since javascript is understood by mozilla browsers on all plat
forms, often one single xpi package can be deployed on all plat
forms.
...the getfolder api provides you with enough "syntactic sugar" to determine other locations on the user's computer on different plat
forms and os's.
... a single install.js is often capable of running on many different plat
forms.
ContextMenus - Archive of obsolete content
for example, the following will attach a context menu with the id 'contentareacontextmenu' to a browser element: <browser context="contentareacontextmenu"> indicating the default item on some plat
forms, one of the items in a context menu is marked as being a default operation.
...on plat
forms that support it, it will be marked as a default item.
... on other plat
forms, the attribute will just be ignored and the menuitem will be displayed normally.
... note that the default attribute just affects how the item is displayed, it per
forms no other function itself.
Input Controls - Archive of obsolete content
looking for a guide to using input controls and
forms on the web?
... see
forms in html.
... « previousnext » looking for a guide to using input controls and
forms on the web?
... see
forms in html.
XUL accessibility guidelines - Archive of obsolete content
to enforce this pattern some
forms provide three form fields.
... <label control="login-username" value="username:"/> <textbox id="login-username"/> <label control="login-password">password:</label> <textbox id="login-password" type="password"/> larger
forms can be difficult to layout and structure.
... while there are many ways to visually structure
forms, always provide a text label for every form element.
... complex
forms sometimes require a more advanced labeling system than is possible with the standard xul attributes.
Using the W3C DOM - Archive of obsolete content
« previousnext » the document object has properties for accessing collections of elements, such as document.images and document.
forms.
...y document object properties are not supported in the w3c document object model: document.layers[] id_attribute_value document.all document.all.id_attribute_value document.all[id_attribute_value] the following form related properties (originally from internet explorer) are not supported in the w3c document object model: formname.inputname.value inputname.value formctrlname document.
forms(0) (note: document.
forms[0] (using square brackets) uses the dom standard
forms collection) scripts that use these properties will throw errors in most standards-compliant browsers.
... ie-specific ways to access elements w3c web standards replacements id_attribute_value document.getelementbyid() document.all.id_attribute_value document.getelementbyid() document.all[id_attribute_value] document.getelementbyid() formname.inputname.value document.
forms["formname"].inputname.value or document.
forms["formname"].elements["inputname"].value inputname.value document.
forms["formname"].inputname.value or document.
forms["formname"].elements["inputname"].value formctrlname document.
forms["formname"].formctrlname or document.
forms["formname"].elements["formctrlname"] document.
forms(0) document.
forms[0] ...
... more on accessing
forms and form elements: referencing
forms and form controls by comp.lang.javascript newsgroup faq notes dom 2 specification on accessing
forms and form elements referencing
forms and form elements correctly, javascript best practices, by matt kruse for accessing a group of elements, the dom specification also includes getelementsbytagname, which returns a nodelist of all the elements with the given tag name in the order they appear in the document: var arrcollection_of_pargs = document.getelementsbytagname("p"); var objfirst_parg = arrcollection_of_pargs[0]; // objfirst_parg will reference the first paragraph in the document objfirst_parg.style.border = "2px solid green"; // and now, the first paragraph in the document // gets a 2px solid green border.
Gecko info for Windows accessibility vendors
this is done to ensure a common look and feel across all supported plat
forms, and to allow for different skins (appearances).
... x
forms: x
forms is the future of online
forms as envisioned by the w3c.
... drawing on other w3c standards like xml schema, xpath, and xml events, x
forms tries to address some of the limitations with the current html
forms model.
... one of the key features of x
forms is accessibility.
JavaScript OS.Constants
useful mostly for using js-ctypes to interact with the following plat
forms: macos x; android; linux; other variants of unix.
... os.constants.libc is available on all plat
forms, although some constants are not defined everywhere.
... exdev cross-device link opening files unix access rights defined on all plat
forms but meaningful only on unix.
...os.constants.win is undefined on non-windows plat
forms.
About NSPR
history a good portion of the library's purpose, and perhaps the primary purpose in the gromit environment, was to provide the underpinnings of the java vm, more or less mapping the sys layer that sun defined for the porting of the java vm to various plat
forms.
... time timing facilities are available in two
forms: interval timing and calendar functions.
...additionally there are routines to convert to and from most well-known
forms of ascii into the 64-bit nspr representation.
... where it's headed nspr is applicable as a platform on which to write threaded applications that need to be ported to multiple plat
forms.
Optimizing Applications For NSPR
netscape portable runtime (nspr) tries to provide a consistent level of service across the plat
forms it supports.
... nspr uses timer signals to implement thread preemption for local threads on some plat
forms.
... interrupting threads (via <tt>pr_interrupt()</tt>) on threads blocked in i/o functions is implemented to various degrees on different plat
forms.
... the unix based plat
forms all implement the function though there may be up to a 5 second delay in processing the request.
Process Forking in NSPR
the threads provided in netscape portable runtime (nspr) are implemented using different mechanisms on the various plat
forms.
... on some plat
forms, nspr threads directly map one-to-one to the threads provided by the platform vendor, on other plat
forms nspr threads are basically user-level threads within a single process (with no kernel threads) and on still others nspr threads are user-level threads implemented on top of one or more kernel threads within single address space.
... nspr does not override the fork function and so, when fork is called from the nspr thread the results are different on the various plat
forms.
...so, to be consistent across all plat
forms, it is suggested that when using fork in a nspr thread; the exec function should be called in the child process.
Invariants
(the jsval encoding depends on this.) the jsstackframe::down chain never
forms a cycle.
... but note that a stack frame is not necessarily newer than the next stack frame down, thanks to generators!) an object's scope chain (found by chasing jsobject::fslots[jsslot_parent]) never
forms a cycle.
...even if the function is native, there is serious trouble: js_newobject with null parent argument calculates the parent from cx->fp->scopechain, which can be stale if we're on trace.) the chain of properties starting at any jsshape and chasing jsshape::parent never
forms a cycle and does not contain any duplicate jsscopeproperty::slot values other than -1.
...jsop_bindname per
forms this lookup.) the rules below (not exactly invariants) govern the bytecode emitted for nameexpressions.
SpiderMonkey 31
get it here mozilla-esr31 you will find it in "firefox extended support release 31" package on hg release platform support spidermonkey 31 is supported on all the plat
forms where firefox 31 runs.
...on some other plat
forms (sparc, mips), the jit is provided but not supported.
... on all other plat
forms the jit is simply disabled; javascript code runs in an interpreter, as in previous versions.
... on posix plat
forms, building a threadsafe shell no longer requires nspr.
Shell global objects
getsharedarraybuffer per
forms an ordering memory barrier.
...setsharedarraybuffer per
forms an ordering memory barrier.
... enablesinglestepprofiling() this function will fail on plat
forms that don't support single-step profiling (currently everything but arm-simulator).
...the list of flags is available by calling this function with help as the flag's name wasmloop(filename, imports) per
forms an afl-style persistent loop reading data from the given file and passing it to thewasmeval function together with the specified imports object.
Web Replay
instead of communicating via ipc with a compositor in the ui process, there is a compositor in the recording process itself which per
forms the rendering.
... recording/replaying process extensions during initialization the child process spawns a thread that does not participate in the recording — any ipc or other system calls it per
forms are live, even when replaying.
... the difficulties are in figuring out the set of system library apis to intercept, in getting the memory management and dirty memory parts of the rewind infrastructure to work, and in handling the different graphics and ipc pathways on different plat
forms.
... compared to rr: this should work on all plat
forms and architectures supported by gecko, though with substantial port work required.
XPCOM ABI
while xpcom components written in a scripting language (such as javascript) can be moved across plat
forms (such as windows and os x) without adaptation, those written in a compiled language (such as c++) require recompilation when moving to a different platform.
... a binary xpcom component consists of an .xpt file which fits all plat
forms and a dll (.dll on windows, .so on unix) which is platform-specific and has a certain abi.
... abi naming each abi is named with a string [target_xpcom_abi] of the following format: {cpu_arch}-{target_compiler_abi} {cpu_arch} [plat
forms] represents the cpu architecture and may be either: x86 - i386 and higher series (including x86-64 cpus in 32-bit mode) ppc - powerpc series alpha - alpha series x86_64 - amd64/emt64 series in 64-bit mode (32-bit mode is still considered x86) sparc - sparc series ia64 - itanium series {target_compiler_abi}[plat
forms] represents the compiler abi and may be either: msvc - microsoft visual c++ n32 - irix 6...
... note: plat
forms this is not an exhaustive list of possible cpu architectures and compiler abis.
Xptcall Porting Guide
this code needs to be ported to all plat
forms that want to support xptcall (and thus mozilla).
... the tree mozilla/xpcom/reflect/xptcall +--public // exported headers +--src // core source | \--md // platform specific parts | +--mac // mac ppc | +--unix // all unix | \--win32 // win32 | +--test // simple tests to get started \--tests // full tests via api porters are free to create subdirectories under the base md directory for their given plat
forms and to integrate into the build system as appropriate for their platform.
...porters can decide how best to do this for their plat
forms.
... // return a refcounted pointer to the interfaceinfo for this object // note: on some plat
forms this must not fail or we crash!
ctypes
similar to errno in libc, available on all plat
forms.
... predefined data types primitive types these types behave the same on all plat
forms.
... note this automatically converts to an int64 javascript object on all plat
forms, since it's unknown whether this is a 32-bit or 64-bit value.
... note this automatically converts to a uint64 javascript object on all plat
forms, since it's unknown whether this is a 32-bit or 64-bit value.
Plug-in Basics - Plugins
understanding the plug-in api plug-ins and platform independence understanding the plug-in api a plug-in is a native code library whose source con
forms to standard c syntax.
...in general, the operation of all api functions is the same on all plat
forms.
...although plug-ins are platform-specific, the plug-in api is designed to provide the maximum degree of flexibility and to be functionally consistent across all plat
forms.
... this guide notes platform-specific differences in coding for the ms windows, mac os x, and unix plat
forms.
ReadableStream.pipeThrough() - Web APIs
syntax var transformedstream = readablestream.pipethrough(trans
formstream[, options]); parameters trans
formstream a trans
formstream (or an object with the structure {writable, readable}) consisting of a readable stream and a writable stream working together to transform some data from one form to another.
... return value the readable side of the trans
formstream.
... exceptions typeerror the writable and/or readable property of trans
formstream are undefined.
... // fetch the original image fetch('png-logo.png') // retrieve its body as readablestream .then(response => response.body) .then(rs => logreadablestream('fetch response stream', rs)) // create a gray-scaled png stream out of the original .then(body => body.pipethrough(new pngtrans
formstream())) .then(rs => logreadablestream('png chunk stream', rs)) specifications specification status comment streamsthe definition of 'pipethrough()' in that specification.
Adding 2D content to a WebGL context - Web APIs
the vertex shader must perform the needed trans
forms on the vertex's position, make any other adjustments or calculations it needs to make on a per-vertex basis, then return the transformed vertex by saving it in a special variable provided by glsl, called gl_position.
...in this case we have one attribute and two uni
forms.
...uni
forms are similar to javascript global variables.
...ay_buffer, buffers.position); gl.vertexattribpointer( programinfo.attriblocations.vertexposition, numcomponents, type, normalize, stride, offset); gl.enablevertexattribarray( programinfo.attriblocations.vertexposition); } // tell webgl to use our program when drawing gl.useprogram(programinfo.program); // set the shader uni
forms gl.uniformmatrix4fv( programinfo.uniformlocations.projectionmatrix, false, projectionmatrix); gl.uniformmatrix4fv( programinfo.uniformlocations.modelviewmatrix, false, modelviewmatrix); { const offset = 0; const vertexcount = 4; gl.drawarrays(gl.triangle_strip, offset, vertexcount); } } the first step is to clear the canvas to our backg...
Web audio spatialization basics - Web APIs
first, we'll get references to the elements we want to move, then we'll store references to the values we'll change when we set up css trans
forms to actually do the movement.
... finally, we'll set some bounds so our boombox doesn't move too far in any direction: const movecontrols = document.queryselector('#move-controls').queryselectorall('button'); const boombox = document.queryselector('.boombox-body'); // the values for our css trans
forms let transform = { xaxis: 0, yaxis: 0, zaxis: 0.8, rotatex: 0, rotatey: 0 } // set our bounds const topbound = -posy; const bottombound = posy; const rightbound = posx; const leftbound = -posx; const innerbound = 0.1; const outerbound = 1.5; let's create a function that takes the direction we want to move as a parameter, and both modifies the css transform and updates the position and orientation values of our panner node properties to change the sound as appropriate.
...t into a radian range value for use in math.sin and math.cos later, when we want to figure out the new coordinates when we're rotating our boombox: // set up rotation constants const rotationrate = 60; // bigger number equals slower sound rotation const q = math.pi/rotationrate; //rotation increment in radians we can also use this to work out degrees rotated, which will help with the css trans
forms we will have to create (note we need both an x and y-axis for the css trans
forms): // get degrees for css const degreesx = (q * 180)/math.pi; const degreesy = (q * 180)/math.pi; let's take a look at our left rotation as an example.
...the panner node does some very involved maths under the hood; there are a number of tests here so you can keep track of the status of the inner workings of this node across different plat
forms.
ARIA Test Cases - Accessibility
but when dropping down the lists of states in either example, after the second or so list item, jaws turns off
forms mode, and the user has to turn off v cursor to be able to make selections or tab to anything useful.
... basic grid -- single select grid in an application -- single select illinois grid example -- multi select expected at behavior: screen reader should read column and row headers as the grid is traversed with arrow keys (in
forms mode).
...for example, while in the grid in
forms mode, the user should be able to configure the screen reader to read row headers only.
... window-eyes window-eyes should allow the user to change row/col header reading modes with ctrl+shift+h, whether the user is in browse or
forms mode.
-webkit-transform-2d - CSS: Cascading Style Sheets
the -webkit-transform-2d boolean css media feature is a chrome extension whose value is true if vendor-prefixed css 2d trans
forms are supported.
... syntax -webkit-transform-2d is a boolean css media feature whose value is true if the browser supports -webkit prefixed css 2d trans
forms.
... values true the browser supports the 2d css trans
forms with the -webkit prefix.
... false the 2d css trans
forms prefixed with -webkit are not supported by the browser.
-webkit-transform-3d - CSS: Cascading Style Sheets
the -webkit-transform-3d boolean css media feature is a chrome extension whose value is true if vendor-prefixed css 3d trans
forms are supported.
... syntax -webkit-transform-3d is a boolean css media feature whose value is true if the browser supports -webkit prefixed css 3d trans
forms.
... values true the browser supports the 3d css trans
forms with the -webkit prefix.
... false the 3d css trans
forms prefixed with -webkit are not supported by the browser.
font-variant-alternates - CSS: Cascading Style Sheets
/* keyword values */ font-variant-alternates: normal; font-variant-alternates: historical-
forms; /* functional notation values */ font-variant-alternates: stylistic(user-defined-ident); font-variant-alternates: styleset(user-defined-ident); font-variant-alternates: character-variant(user-defined-ident); font-variant-alternates: swash(user-defined-ident); font-variant-alternates: ornaments(user-defined-ident); font-variant-alternates: annotation(user-defined-ident); font-variant-alternates: swash(ident1) annotation(ident2); /* global values */ font-variant-alternates: initial; font-variant-alternates: inherit; font-var...
... syntax this property may take one of two
forms: either the keyword normal or one or more of the other keywords and functions listed below, space-separated, in any order.
... historical-
forms this keyword enables historical
forms — glyphs that were common in the past but not today.
...it also applies to ::first-letter and ::first-line.inheritedyescomputed valueas specifiedanimation typediscrete formal syntax normal | [ stylistic( <feature-value-name> ) | historical-
forms | styleset( <feature-value-name># ) | character-variant( <feature-value-name># ) | swash( <feature-value-name> ) | ornaments( <feature-value-name> ) | annotation( <feature-value-name> ) ]where <feature-value-name> = <custom-ident> examples html <p>firefox rocks!</p> <p class="variant">firefox rocks!</p> css @font-feature-values "leitura display swashes" { @swash { fancy: 1 } } p { fo...
<transform-function> - CSS: Cascading Style Sheets
examples transform function comparison the following example provides a 3d cube created from dom elements and trans
forms, and a select menu allowing you to choose different transform functions to transform the cube with, so you can compare the effects of the different types.
...the cube's starting state is slightly rotated using transform3d(), to allow you to see the effect of all the trans
forms.
...; selectelem.addeventlistener('change', () => { if(selectelem.value === 'choose a function') { return; } else { example.style.transform = `rotate3d(1, 1, 1, 30deg) ${selectelem.value}`; settimeout(function() { example.style.transform = 'rotate3d(1, 1, 1, 30deg)'; }, 2000) } }) result specifications specification status comment css trans
forms level 2the definition of '<transform-function>' in that specification.
... css trans
forms level 1the definition of '<transform-function>' in that specification.
transform - CSS: Cascading Style Sheets
the transform functions are multiplied in order from left to right, meaning that composite trans
forms are effectively applied in order from right to left.
...ero> ] )<rotatez()> = rotatez( [ <angle> | <zero> ] )<perspective()> = perspective( <length> )where <length-percentage> = <length> | <percentage> examples translating and rotating an element html <div>transformed element</div> css div { border: solid red; transform: translate(30px, 20px) rotate(20deg); width: 140px; height: 60px; } result more examples please see using css trans
forms and <transform-function> for more examples.
... specifications specification status comment css trans
forms level 2the definition of 'transform' in that specification.
... css trans
forms level 1the definition of 'transform' in that specification.
HTML elements reference - HTML: Hypertext Markup Language
forms html provides a number of elements which can be used together to create
forms which the user can fill out and submit to the web site or application.
... there's a great deal of further information about this available in the html
forms guide.
... element description <button> the html <button> element represents a clickable button, used to submit
forms or anywhere in a document for accessible, standard button functionality.
... <input> the html <input> element is used to create interactive controls for web-based
forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent.
Index - HTTP
using content negotiation, the server then selects one of the proposals, uses it and in
forms the client of its choice with the content-type response header.
...using content negotiation, the server then selects one of the proposals, uses it and in
forms the client of its choice within the content-type response header.
...using content negotiation, the server selects one of the proposals, uses it and in
forms the client of its choice with the content-encoding response header.
...(by languages, we mean natural languages, such as english, and not programming languages.) using content negotiation, the server then selects one of the proposals, uses it and in
forms the client of its choice with the content-language response header.
HTTP Index - HTTP
using content negotiation, the server then selects one of the proposals, uses it and in
forms the client of its choice with the content-type response header.
...using content negotiation, the server selects one of the proposals, uses it and in
forms the client of its choice with the content-encoding response header.
...(by languages, we mean natural languages, such as english, and not programming languages.) using content negotiation, the server then selects one of the proposals, uses it and in
forms the client of its choice with the content-language response header.
... 215 trace http, reference, trace method the http trace method per
forms a message loop-back test along the path to the target resource, providing a useful debugging mechanism.
Creating a Microsummary - Archive of obsolete content
be creating microsummaries displaying the firefox download count, let's give it the name "firefox download count": <?xml version="1.0" encoding="utf-8"?> <generator xmlns="http://www.mozilla.org/microsummaries/0.1" name="firefox download count"> </generator> adding an xslt transform sheet generators must include an xslt transform sheet (also known as an xslt stylesheet) which trans
forms the page content into its microsummary.
...this with the xslt <output> element: <?xml version="1.0" encoding="utf-8"?> <generator xmlns="http://www.mozilla.org/microsummaries/0.1" name="firefox download count"> <template> <transform xmlns="http://www.w3.org/1999/xsl/transform" version="1.0"> <output method="text"/> </transform> </template> </generator> using a simple xslt <template> the xslt processor trans
forms documents by comparing each xslt <template> element in the transform sheet to a set of nodes in the document.
... when a <template>'s match attribute matches a node, the processor per
forms the transformations specified by the content of the element.
Creating a Help Content Pack - Archive of obsolete content
nc:platform (added in mozilla 1.8b2/firefox 1.1) when present specifies the plat
forms to which the information stored in the referenced data sources applies.
...if this attribute is omitted, the information in the data sources applies to all plat
forms.
....) create a new rdf file (for now let's name it glossary.rdf), and add the following lines to it: <?xml version="1.0"?> <rdf:rdf xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:nc="http://home.netscape.com/nc-rdf#"> <rdf:description rdf:about="urn:root"> <nc:subheadings> <rdf:seq> </rdf:seq> <nc:subheadings> </rdf:description> </rdf:rdf> this
forms the outer framework of a glossary description file.
Special per-platform menu considerations - Archive of obsolete content
on the mac, these menu items will be moved onto the application menu, but on other plat
forms, they will be left in their original locations.
... this makes it easier to write the same xul code for all plat
forms.
...ere is an example: <menubar> <menu label="tools"> <menupopup> <menuitem label="spell check"/> <menuitem id="menu_preferences" label="preferences" oncommand="window.opendialog('options.xul', '_new', 'chrome');"/> </menupopup> </menu> </menubar> this menu item will be placed on the application menu on the macintosh but left in the tools menu on other plat
forms.
Using Spacers - Archive of obsolete content
in addition, different plat
forms may have special requirements on the user interface.
...applications that need to support multiple plat
forms and languages usually have their windows laid out with lots of space to allow for this.
... some plat
forms and user interface toolkits provide components that are smart enough to resize and re-position themselves to fit the needs of the user.
XUL Structure - Archive of obsolete content
the mozilla rendering engine takes the content in the form of html source and trans
forms it into a document tree.
...however, there are some features that are specific to html, such as
forms, and others which are specific to xul, such as overlays.
...for example, while the form controls on an html page are accessible via the document.
forms property, this property isn't available for xul documents, since xul doesn't have
forms in the html sense.
prefwindow - Archive of obsolete content
on plat
forms where the convention is to apply changes immediately, the preferences are adjusted as soon as the user interface element is changed.
... on other plat
forms, the preferences are not applied until the dialog is closed.
...this one can be safely omitted in xulrunner-based applications but you can override the default behavior (true for mac os x and false for other plat
forms) setting it.
NSPR Release Engineering Guide - Archive of obsolete content
this paper is for engineers performing formal release for the netscape portable runtime (nspr) across all plat
forms.
... feature complete update ...pr/include/prinit.h with release numbers build all targets, debug and optimized on all plat
forms using local directories run the test suite on all targets verify release numbers show up in binaries resolve testing anomalies tag the tree with nsprpub_release_x_y_z_beta beta release checkout a whole new tree using the tag from above build all targets, debug and optimized on all plat
forms using the command: gmake release mdist=<dir>/mdist build_number=vx.y.z [build_opt=1 | use_debug_rtl=1] copy the bits from mdist to /share/builds/components/nspr20/.vx.y.z 1 run explode.pl run the test suite on all targets, using binaries & headers from shipped bits resolve testing anomalies tag t...
...he tree with nsprpub_release_x_y[_z] release candidate checkout a whole new tree using tag (including fixes) tag the treey with nsprpub_release_x_y_z build all targets, debug and optimized on all plat
forms using the command: gmake release mdist=<dir>/mdist build_number=vx.y.z [build_opt=1 | use_debug_rtl=1] copy the bits from mdist to /share/builds/components/nspr20/.vx.y.z in /share/builds/components/nspr20/ run the following scripts: explode.pl rename.sh symlink.sh rtm bits rename the .vx.y.z directory to vx.y.z (remove the hidden directory 'dot').
Tamarin Tracing Build Documentation - Archive of obsolete content
for instructions on tamarin central, please see tamarin build documentation supported plat
forms operating system processor status windows xp x86 supported, acceptance and performance tests automated in buildbot mac os x 10.4 x86 supported, acceptance and performance tests automated in buildbot linux - ubuntu 8.0.4 x86 supported, acceptance and performance tests automated in buildbot windows mobile (pocket pc 5.0) armv4t supported, acceptance and performance tests automated in buildbot raw image (no os) armv5 supported, acceptance and performance tests not done linux (nokia n810) armv5 supported, acceptance and performance tests not done current build statu...
... $ make cppflags=-davmplus_verbose windows mobile to build for arm: $ python ../configure.py --target=arm-windows --enable-shell; make to build for thumb: $ python ../configure.py --target=thumb-windows --enable-shell; make platform-specific builds project files for specific plat
forms/ides (microsoft visual studio, xcode, etc) are included in the source tree under tamarin-tracing/platform, but are not formally supported.
...builders: which plat
forms will be compiled and tested.
Archived open Web documentation - Archive of obsolete content
x
forms x
forms were envisioned as the future of online
forms as envisioned by the w3c.
... drawing on other w3c standards like xml schema, xpath, and xml events, x
forms tried to address some of the limitations of the current html
forms model.
... however, x
forms never gained traction and is now considered obsolete.
Index - Game development
12 2d collision detection 2d, games, javascript, collision detection one of the simpler
forms of collision detection is between two rectangles that are axis aligned — meaning no rotation.
...this article provides a detailed guide to implementing audio for web games, looking at what works currently across as wide a range of plat
forms as possible.
... 30 implementing game control mechanisms controls, desktop, gamepad, games, javascript, laptop, mobile, keyboard, mouse, touch one of html5's main advantages as a game development platform is the ability to run on various plat
forms and devices.
CSS and JavaScript accessibility best practices - Learn web development
most of the css you'll write for
forms will be for sizing the elements, lining up labels and inputs, and getting them looking neat and tidy.
... simple content and functionality is arguably easy to make accessible — for example text, images, tables,
forms and push button that activate functions.
... note: some of you will probably be thinking about that fact that html5
forms have built-in validation mechanisms like the required, min/minlength, and max/maxlength attributes (see the <input> element reference for more information).
The HTML5 input types - Learn web development
previous overview:
forms next in the previous article we looked at the <input> element, covering the original values of the type attribute available since the early days of html.
...if you want more detail on browser support, you should consult our html
forms element reference, and in particular our extensive <input> types reference.
... previous overview:
forms next in this module your first form how to structure a web form basic native form controls the html5 input types other form controls styling web
forms advanced form styling ui pseudo-classes client-side form validation sending form data advanced topics how to build custom form controls sending
forms through javascript property compatibility table for form widgets ...
Other form controls - Learn web development
previous overview:
forms next we now look at the functionality of non-<input> form elements in detail, from other control types such as drop-down lists and multi-line text fields, to other useful form features such as the <output> element (which we saw in action in the previous article), and progress bars.
...html has two
forms of drop down content: the select box, and the autocomplete box.
... previous overview:
forms next in this module your first form how to structure a web form basic native form controls the html5 input types other form controls styling web
forms advanced form styling ui pseudo-classes client-side form validation sending form data advanced topics how to build custom form controls sending
forms through javascript property compatibility table for form widgets ...
Front-end web developer - Learn web development
modules javascript first steps (30–40 hour read/exercises) javascript building blocks (25–35 hour read/exercises) introducing javascript objects (25–35 hour read/exercises) client-side web apis (30–40 hour read/exercises) asynchronous javascript (25–35 hour read/exercises) web
forms — working with user data time to complete: 40–50 hours prerequisites
forms require html, css, and javascript knowledge.
... given the complexity of working with
forms, it is a dedicated topic.
... modules web
forms (40–50 hours) making the web work for everyone time to complete: 60–75 hours prerequisites it is a good idea to know html, css, and javascript before working through this section.
Command line options
firefox -no-remote -p "another profile" note: since firefox 9, this does really mean what its name implies on all plat
forms, i.e.
...other plat
forms accept both upper and lower case.
... firefox -remote "openurl(www.mozilla.org, new-tab)" this option is only available on x-windows unix plat
forms.
Hacking with Bonsai
the original navigator code base had large sections that were shared across multiple plat
forms.
... many times, code checked in would compile or run on a handful of plat
forms.
...the build team will then pull the 8:00 am tree, and build it on a subset of the plat
forms, linux, win32 & macppc.
OSFile.jsm
this is critical because some plat
forms have extremely slow storage (e.g.
... smartphones, tablets) and because, regardless of the plat
forms, doing too much i/o penalizes not just your application but potentially all the applications running on the system, which is quite bad for the user experience.
... consequently, one of the key design choices of os.file is to provide operations that are low-level enough that they do not hide any i/o from the developer (which could cause the developer to perform more i/o than they think) and, since not all plat
forms have the same features, offer system-specific information that the developer can use to optimize his algorithms for a platform.
Fonts for Mozilla 2.0's MathML engine
on most linux distributions and similar open source plat
forms, you can install math fonts (stix, asana or mathjax fonts) from your package manager or get them from this zip archive.
... on android, firefox os and other plat
forms where the instructions above do not work: install the mathml-fonts add-on.
...in general, if the necessary glyphs are not available on the system then mozilla tries to stretch symbols using scale trans
forms, but that may result in a less pleasant rendering.
Gecko Profiler FAQ
is it better to profile across multiple plat
forms, or to focus time on windows (since that's the bulk of our users)?
... [ehsan] that being said, we do see a lot of windows-specific issues that you will not find on other plat
forms, for example sometimes code calls into a windows api that requires loading a dll the first time you call it that takes 10s of milliseconds to finish, etc.
... and when you get to the platform specific parts of the browser stack (such as graphics, media, etc.) then profiling on windows would be certainly a lot more valuable than on other plat
forms.
Leak-hunting strategies and tips
tool finds plat
forms requires leak tools for large object graphs leak gauge windows, documents, and docshells only all plat
forms any build gc and cc logs js objects, dom objects, many other kinds of objects all plat
forms any build leak tools for medium-size object graphs bloatview, refcount tracing and balancing objects that implement nsisupports or...
... use moz_count_{ctor,dtor} all tier 1 plat
forms debug build (or build opt with --enable-logrefcnt) leaksoup (part of tracemalloc) all objects?
... (or allocations?) all tier 1 plat
forms build with --enable-trace-malloc leak tools for simple objects and summary statistics tracemalloc all allocations all tier 1 plat
forms build with --enable-trace-malloc valgrind all allocations mac, linux build with --enable-valgrind and some other options lsan all allocations mac, linux any build apple tools ?
Refcount tracing and balancing
refcount tracing logs calls to addref and release, preferably for a particular set of classes, including call-stacks in symbolic form (on plat
forms that support this).
...this requires c++ dynamic casts, so it is not supported on all plat
forms.
... xpcom_mem_alloc_log for plat
forms that don't have stack-crawl support, xpcom supports logging at the call site to addref/release using the usual cpp __file__ and __line__ number macro expansion hackery.
about:memory
it only really matters on 32-bit plat
forms such as win32.
... there is also "vsize-max-contiguous" (not measured on all plat
forms, and not shown in this example), which indicates the largest single chunk of available virtual address space.
...the measurements taken vary between plat
forms.
Preferences system
using this system it is possible to create preferences windows that display and operate appropriately on various plat
forms (windows, macos x and gnome).
...you should be careful to read the higs for the plat
forms you are targeting and use the xul preprocessor if necessary to set different window titles as appropriate.
... you should also be careful to specify the width of the window (in em) as appropriate using the preprocessor for each targeted platform, as well as the height (in em) for plat
forms where the window size does not change as the selected panel is changed (e.g.
NSPR Contributor Guide
your new feature must be implemented on all plat
forms supported by nspr.
... when you consider a new api for nspr ask yourself if your proposed feature can implement it across all plat
forms supported by nspr.
... if several plat
forms cannot be made to implement your api, then it is not a good candidate for inclusion in nspr.
NSS 3.50 release notes
notable changes in nss 3.50 verified primitives from hacl* were updated, bringing performance improvements for several plat
forms.
... note that intel processors with sse4 but without avx are currently unable to use the improved chacha20/poly1305 due to a build issue; such plat
forms will fall-back to less optimized algorithms.
...4 cpu features on freebsd bug 1607099 - remove the buildbot configuration bug 1585429 - add more hkdf test vectors bug 1573911 - add more rsa test vectors bug 1605314 - compare all 8 bytes of an mp_digit when clamping in windows assembly/mp_comba bug 1604596 - update wycheproof vectors and add support for cbc, p256-ecdh, and cmac tests bug 1608493 - use aes-ni for non-gcm aes ciphers on plat
forms with no assembly-optimized implementation, such as macos.
NSS environment variables
necessary on some plat
forms to get correct function names when using leak reporting software.
... values understood: win95 before 3.0 use_64 boolean (1 to enable) on plat
forms that has separate 32-bit and 64-bit abis, nss builds for the 32-bit abi by default.
... before 3.0 use_pthreads boolean (1 to enable) on plat
forms where posix threads are available, but are not the os'es preferred threads library, this tells nss and nspr to build using pthreads.
SpiderMonkey 1.8.5
—22 march 2011 platform support spidermonkey 1.8.5 is supported on all the plat
forms where firefox 4 runs.
...on other plat
forms, the jit is simply disabled; javascript code runs in an interpreter, as in previous versions.
...to select an alternate c++ compiler, invoke configure thus: cxx=/usr/bin/g++-4.0 /path/configure --my-configuration-options js-config the new configure-based build system does not correctly generate the js-config script on many plat
forms, nor when js-ctypes are enabled.
SpiderMonkey 1.8.7
—22 march 2011 platform support spidermonkey 1.8.7 is supported on all the plat
forms where firefox 10 runs.
...on other plat
forms, the jit is simply disabled; javascript code runs in an interpreter, as in previous versions.
...to select an alternate c++ compiler, invoke configure thus: cxx=/usr/bin/g++-4.0 /path/configure --my-configuration-options js-config the new configure-based build system does not correctly generate the js-config script on many plat
forms, nor when js-ctypes are enabled.
SpiderMonkey 1.8.8
—insert-actual-release-date-here platform support spidermonkey 1.8.8 is supported on all the plat
forms where firefox insert-actual-firefox-version-number-here runs.
...on some other plat
forms (sparc, mips), the jit is provided but not supported.
... on all other plat
forms the jit is simply disabled; javascript code runs in an interpreter, as in previous versions.
SpiderMonkey 17
— 25 march 2013 platform support spidermonkey 17 is supported on all the plat
forms where firefox 17 runs.
...on some other plat
forms (sparc, mips), the jit is provided but not supported.
... on all other plat
forms the jit is simply disabled; javascript code runs in an interpreter, as in previous versions.
SpiderMonkey 24
get it here mozilla-esr24 if the download url is outdate you will find it in "firefox extended support release 24" package on hg release platform support spidermonkey 24 is supported on all the plat
forms where firefox 24 runs.
...on some other plat
forms (sparc, mips), the jit is provided but not supported.
... on all other plat
forms the jit is simply disabled; javascript code runs in an interpreter, as in previous versions.
SpiderMonkey 38
get it here mozilla-esr38 you will find it in "firefox extended support release 38" package on hg release platform support spidermonkey 38 is supported on all the plat
forms where firefox 38 runs.
...on some other plat
forms (sparc, mips), the jit is provided but not supported.
... on all other plat
forms the jit is simply disabled; javascript code runs in an interpreter, as in previous versions.
SpiderMonkey 45
— apr 14, 2016 platform support spidermonkey 45 is supported on all plat
forms able to run firefox 45.
...on several other plat
forms (sparc, mips), the jit is provided but not supported.
... on remaining plat
forms the jit is disabled; javascript code runs in an interpreter, as it has in previous versions.
AT APIs Support
we provide for them the support of these products on windows, linux/unix and os x plat
forms.
...this is done to ensure a common look and feel across all supported plat
forms, and to allow for different skins (appearances).
...however it's preferable to grab the current build of firefox or any other gecko-based product to be up to dated: firefox recent builds thunderbird recent builds seamonkey recent builds determining if accessibility is enabled in a firefox accessibility is enabled on windows and linux plat
forms by default.
nsIHapticFeedback
fox 4 / thunderbird 3.3 / seamonkey 2.1) implemented by: @mozilla.org/widget/hapticfeedback;1 as a service: var hapticfeedback = components.classes["@mozilla.org/widget/hapticfeedback;1"] .getservice(components.interfaces.nsihapticfeedback); once you have the service, you can initiate haptic feedback (that is, cause the device to vibrate, if it's supported) by calling per
formsimpleaction(): hapticfeedback.per
formsimpleaction(components.interfaces.nsihapticfeedback.longpress); method overview void per
formsimpleaction(in long islongpress); constants press length constants constant value description shortpress 0 specify as the action type to perform a short vibration.
... methods per
formsimpleaction() perform haptic feedback.
... void per
formsimpleaction( in long islongpress ); parameters islongpress the press length; this will determine how long the vibration should last.
nsIParserUtils
sanitizerdrop
forms (1 << 4) flag for sanitizer: drops
forms and form controls (excluding <fieldset> and <legend>.
... by default, non-dangerous non-css presentational html elements and attributes or
forms are not removed.
... to remove these, use sanitizerdropnoncsspresentation and/or sanitizerdrop
forms.
nsIXULTemplateBuilder
addresult() in
forms the template builder that a new result is available.
... removeresult() in
forms the template builder that a result no longer applies.
... errors throws ns_error_null_pointer if either argument is null, or ns_error_invalid_arg if the ids don't match resultbindingchanged() in
forms the template builder that one or more of the optional bindings for a result has changed.
Reference Manual
in debug builds, if you subvert this invariant with one of the assignment
forms that doesn't call queryinterface, nscomptr will assert at runtime in the bad assignment.
...unit tests the unit tests for nscomptr can be found in the file /xpcom/tests/testcomptr.cpp initialization and assignment built-in
forms assignment into, or initialization of an nscomptr is easy to understand.
...foo3 = dont_addref(rawfoo3ptr); // the annotations described in the table apply to both
forms of constructor, // and to plain-old assignment any of the annotations shown in the table can appear in all the positions demonstrated with dont_addref.
xptcall FAQ
this all works and is being used in mozilla today on numerous plat
forms.
...non-functional stub code exists to allow building xptcall on non-supported plat
forms.
... what plat
forms are supported?
Mozilla
the original navigator code base had large sections that were shared across multiple plat
forms.
... many times, code checked in would compile or run on a handful of plat
forms.
... phishing: a short definition in 2014, the msci estimated an annual global impact of phishing, and various
forms of identity theft, to be as high as $5 billion usd.
Preferences System
using this system it is possible to create preferences windows that display and operate appropriately on various plat
forms (windows, macos x and gnome).
...you should be careful to read the higs for the plat
forms you are targeting and use the xul preprocessor if necessary to set different window titles as appropriate.
... you should also be careful to specify the width of the window (in em) as appropriate using the preprocessor for each targeted platform, as well as the height (in em) for plat
forms where the window size does not change as the selected panel is changed (e.g.
Console messages - Firefox Developer Tools
pages containing login
forms must be served over https, not http.
...
forms containing password fields must submit them over https, not http.
... iframes containing login
forms must be served over https, not http.
File - Web APIs
blob.prototype.stream() trans
forms the file into a readablestream that can be used to read the file contents.
... blob.prototype.text() trans
forms the file into a stream and reads it to completion.
... blob.prototype.arraybuffer() trans
forms the file into a stream and reads it to completion.
Using FormData Objects - Web APIs
it is primarily intended for use in sending form data, but can be used independently from
forms in order to transmit keyed data.
...serid" placeholder="email" required size="32" maxlength="64" /><br /> <label>custom file label:</label> <input type="text" name="filelabel" size="12" maxlength="32" /><br /> <label>file to stash:</label> <input type="file" name="file" required /> <input type="submit" value="stash the file!" /> </form> <div></div> then you can send it using code like the following: var form = document.
forms.nameditem("fileinfo"); form.addeventlistener('submit', function(ev) { var ooutput = document.queryselector("div"), odata = new formdata(form); odata.append("customfield", "this is some extra data"); var oreq = new xmlhttprequest(); oreq.open("post", "stash.php", true); oreq.onload = function(oevent) { if (oreq.status == 200) { ooutput.innerhtml = "uploaded!"; } el...
... submitting
forms and uploading files via ajax without formdata objects if you want to know how to serialize and submit a form via ajax without using formdata objects, please read this paragraph.
Point - Web APIs
point is an interface, which existed only briefly in the css trans
forms level 1 specification, which represents a point in 2-dimensional space.
... specifications this class was specified in the defunct 20 march 2009 working draft of css 2d trans
forms module level 3.
... it is not present in the current working draft of the css trans
forms level 1 specification.
Streams API concepts - Web APIs
a chunk can take a multitude of
forms, just like the chunks in a reader.
...there are two methods available in the spec to facilitate this: readablestream.pipethrough() — pipes the stream through a transform stream, which is a pair comprised of a writable stream that has data written to it, and a readable stream that then has the data read out of it — this acts as a kind of treadmill that constantly takes data in and trans
forms it to a new state.
...at some point the spec writers hope to add something like a trans
formstream class to make creating transform streams easier.
WebGL2RenderingContext.getUniformIndices() - Web APIs
the webgl2renderingcontext.getuniformindices() method of the webgl 2 api retrieves the indices of a number of uni
forms within a webglprogram.
... syntax sequence<gluint> gl.getuniformindices(program, uniformnames); parameters program a webglprogram containing uni
forms whose indices to query.
... uniformnames an array of domstring specifying the names of the uni
forms to query.
WebGL2RenderingContext - Web APIs
uni
forms and attributes webgl2renderingcontext.uniform[1234][uif][v]() methods specifying values of uniform variables.
... webgl2renderingcontext.getuniformindices() retrieves the indices of a number of uni
forms within a webglprogram.
... webgl2renderingcontext.getactiveuni
forms() retrieves information about active uni
forms within a webglprogram.
WebGL constants - Web APIs
active_uni
forms 0x8b86 passed to getprogramparamter to get the number of uni
forms active in a program.
... depth24_stencil8 0x88f0 draw_framebuffer_binding 0x8ca6 read_framebuffer 0x8ca8 draw_framebuffer 0x8ca9 read_framebuffer_binding 0x8caa renderbuffer_samples 0x8cab framebuffer_attachment_texture_layer 0x8cd4 framebuffer_incomplete_multisample 0x8d56 uni
forms constant name value description uniform_buffer 0x8a11 uniform_buffer_binding 0x8a28 uniform_buffer_start 0x8a29 uniform_buffer_size 0x8a2a max_vertex_uniform_blocks 0x8a2b max_fragment_uniform_blocks 0x8a2d max_combined_uniform_blocks 0x8a2e max_unifo...
... 0x8a37 uniform_size 0x8a38 uniform_block_index 0x8a3a uniform_offset 0x8a3b uniform_array_stride 0x8a3c uniform_matrix_stride 0x8a3d uniform_is_row_major 0x8a3e uniform_block_binding 0x8a3f uniform_block_data_size 0x8a40 uniform_block_active_uni
forms 0x8a42 uniform_block_active_uniform_indices 0x8a43 uniform_block_referenced_by_vertex_shader 0x8a44 uniform_block_referenced_by_fragment_shader 0x8a46 sync objects constant name value description object_type 0x9112 sync_condition 0x9113 sync_status 0x9114 ...
WebGL: 2D and 3D graphics for the web - Web APIs
webgl does so by introducing an api that closely con
forms to opengl es 2.0 that can be used in html5 <canvas> elements.
... matrix math for the web a useful guide to how 3d transform matrices work, and can be used on the web — both for webgl calculations and in css3 trans
forms.
... webgl stats a site with statistics about webgl capabilities in browsers on different plat
forms.
Rendering and the WebXR frame animation callback - Web APIs
this pseudocode outlines that process: for each view in the pose's views list: get the webxr gl layer's viewport set the webgl viewport to match for each object in the scene bindprogram() bindvertices() bindmatrices() binduni
forms() bindbuffers() bindtextures() drawmyobject() put simply, this form of renderer is using view-first order.
...instead of setting up the viewport for a given view (such as the left eye), then rendering every object visible to the left eye, one by one, reconfiguring buffers for each object as you go, you can instead render each object twice in a row, once for each eye, thereby only needing to set up the buffers, uni
forms, and so forth once for both eyes.
... the resulting pseudocode looks like this: for each object in the scene bindprogram() binduni
forms() bindbuffers() bindtextures() for each view in the pose's views list get the xrwebgllayer's viewport set the webgl viewport to match bindvertices() bindmatrices() drawmyobject() by changing things up in this way, we only bind programs, uni
forms, buffers, textures, and potentially other things once per frame instead of twice for each object found in the scene.
Example and tutorial: Simple synth keyboard - Web APIs
the keyboard allows you to switch among the standard wave
forms as well as one custom waveform, and you can control the master gain using a volume slider beneath the keyboard.
... the waveform picker on the right side of the settings bar, we place a label and a <select> element named "waveform" whose options correspond to the available wave
forms.
... let notefreq = null; let customwaveform = null; let sineterms = null; let cosineterms = null; finally, global variables that will be used when constructing wave
forms are created: notefreq will be an array of arrays; each array represents one octave, each of which contains one entry for each note in that octave.
Web Audio API - Web APIs
it can be used to simply incorporate audio into your website or application, by providing atmosphere like futurelibrary.no, or auditory feedback on
forms.
... convolvernode the convolvernode interface is an audionode that per
forms a linear convolution on a given audiobuffer, and is often used to achieve a reverb effect.
...the keyboard allows you to switch among the standard wave
forms as well as one custom waveform, and you can control the master gain using a volume slider beneath the keyboard.
Web Authentication API - Web APIs
similar to the other
forms of the credential management api, the web authentication api has two basic methods that correspond to register and login: navigator.credentials.create() - when used with the publickey option, creates new credentials, either for registering a new account or for associating a new asymmetric key pair credentials with an existing account.
... in their most basic
forms, both create() and get() receive a very large random number called a challenge from the server and they return the challenge signed by the private key back to the server.
... server validates and finalizes authentication - upon receiving the result of the authentication request, the server per
forms validation of the response such as: using the public key that was stored during the registration request to validate the signature by the authenticator.
XRView - Web APIs
} special view trans
forms there are a few special trans
forms that are used on the view while rendering and lighting a scene.
...{x: transversedistance, y: verticaldistance, z: axialdistance}, {x: inverseorientation[0], y: inverseorientation[1], z: inverseorientation[2], w: inverseorientation[3]}); mat4.copy(mousematrix, newtransform.matrix); // create a new reference space that trans
forms the object to the new // position and orientation, returning the new reference space.
...the returned object's matrix property is the actual matrix that trans
forms points from the scene's reference space to the object's new position.
Basic form hints - Accessibility
when implementing
forms using traditional html form-related elements, it is important to provide labels for controls, and explicitly associate a label with its control.
...ar validate = function () { var emailelement = document.getelementbyid(emailfieldid); var valid = emailvalid(formdata.email); // returns true if valid, false otherwise emailelement.setattribute("aria-invalid", !valid); setelementbordercolour(emailelement, valid); // sets the border to red if second arg is false }; providing helpful error messages read how to use aria alerts to enhance
forms.
... for more guidance on using aria for
forms accessibility, see the wai-aria authoring practices document.
Perceivable - Accessibility
this article provides practical advice on how to write your web content so that it con
forms to the success criteria outlined in the perceivable principle of the web content accessibility guidelines (wcag) 2.0 and 2.1.
... guideline 1.1 — providing text alternatives for non-text content the key here is that text can be converted to other
forms that people with disabilities can use.
...for example, in
forms, you should never mark required fields purely with a color (like red).
Understandable - Accessibility
this article provides practical advice on how to write your web content so that it con
forms to the success criteria outlined in the understandable principle of the web content accessibility guidelines (wcag) 2.0 and 2.1.
... when more complex explanation is required, you can always include explanatory paragraphs too, or maybe you need to try to make your
forms more intuitive.
... 3.3.4 error prevention (legal, financial, data) (aa) in the case of
forms involved with entry of sensitive data (such as legal agreements, e-commerce transactions, or personal data), at least one of the following should be true: submissions are reversible.
Setting up adaptive streaming media sources - Developer guides
other reasons to use live profile over ondemand for vod content may be: your client or server does not support range requests your server cannot cache range requests efficiently your server cannot prefetch range requests efficiently the sidx* is large and having to load it first slows down startup a little you want to use the original files for both dash and other
forms of delivery (such as microsoft smooth streaming) as a transition strategy you can use the same media files for both live transmission and vod at a later stage *sidx or segmentindexbox is a structure describing a segment by giving its earliest presentation time and other meta-data and can often make up a large portion of the mpd file.
...it's incorporated into ios and osx plat
forms and works well on mobile and desktop safari and most android devices with some caveats.
... the stream segmenter — provided by apple for mac plat
forms — takes a media stream from a local network and splits media into equally sized media files together with an index file.
HTML5 - Developer guides
forms improvements a look at the constraint validation api, several new attributes, new values for the <input> attribute type and the new <output> element.
... new semantic elements beside sections, media and
forms elements, there are numerous new elements, like <mark>, <figure>, <figcaption>, <data>, <time>, <output>, <progress>, or <meter> and <main>, increasing the number of valid html5 elements.
... webgl webgl brings 3d graphics to the web by introducing an api that closely con
forms to opengl es 2.0 that can be used in html5 <canvas> elements.
<button>: The Button element - HTML: Hypertext Markup Language
the html <button> element represents a clickable button, used to submit
forms or anywhere in a document for accessible, standard button functionality.
...use this method when the form has no side effects, like search
forms.
...this helps a variety of people, including people with motor control issues and people using non-precise
forms of input such as a stylus or fingers.
<input type="password"> - HTML: Hypertext Markup Language
note: any
forms involving sensitive information like passwords (e.g.
... login
forms) should be served over https; many browsers now implement mechanisms to warn against insecure login
forms; see insecure passwords.
... new-password allow the browser or password manager to automatically enter a new password for the site; this is used on "change your password" and "new user"
forms, on the field asking the user for a new password.
<input type="range"> - HTML: Hypertext Markup Language
events change and input supported common attributes autocomplete, list, max, min, and step idl attributes list, value, and valueasnumber methods stepdown() and stepup() validation there is no pattern validation available; however, the following
forms of automatic validation are performed: if the value is set to something which can't be converted into a valid floating-point number, validation fails because the input is suffering from a bad input.
... in the meantime, we can make the range vertical by rotating it using using css trans
forms, or, by targeting each browser engine with their own method, which includes setting the appearance to slider-vertical, by using a non-standard orient attribute in firefox, or by changing the text direction for internet explorer and edge.
... html the html needs to be updated to wrap the <input> in a <div> to let us correct the layout after the transform is performed (since trans
forms don't automatically affect the layout of the page): <div class="slider-wrapper"> <input type="range" min="0" max="11" value="7" step="1"> </div> css now we need some css.
A re-introduction to JavaScript (JS tutorial) - JavaScript
the double-equals operator per
forms type coercion if you give it different types, with sometimes interesting results: 123 == '123'; // true 1 == true; // true to avoid type coercion, use the triple-equals operator: 123 === '123'; // false 1 === true; // false there are also != and !== operators.
...it
forms part of a lookup chain (that has a special name, "prototype chain"): any time you attempt to access a property of person that isn't set, javascript will check person.prototype to see if that property exists there instead.
... 'this can now be reversed'.reversed(); // desrever eb won nac siht as mentioned before, the prototype
forms part of a chain.
Regular expressions - JavaScript
note: if you are already familiar with the
forms of a regular expression, you may also read the cheatsheet for a quick lookup for a specific pattern/construct.
... if escape strings are not already part of your pattern you can add them using string.replace: function escaperegexp(string) { return string.replace(/[.*+\-?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string } the "g" after the regular expression is an option or flag that per
forms a global search, looking in the whole string and returning all matches.
...if the number is invalid, the script in
forms the user that the phone number is not valid.
Working with objects - JavaScript
the exception to this rule is array-like object reflected from html, such as the
forms array-like object.
...for example, if the second <form> tag in a document has a name attribute of "myform", you can refer to the form as document.
forms[1] or document.
forms["myform"] or document.
forms.myform.
...ere's an example that defines the same getter and setter used in the previous example: var o = { a: 0 }; object.defineproperties(o, { 'b': { get: function() { return this.a + 1; } }, 'c': { set: function(x) { this.a = x / 2; } } }); o.c = 10; // runs the setter, which assigns 10 / 2 (5) to the 'a' property console.log(o.b); // runs the getter, which yields a + 1 or 6 which of the two
forms to choose depends on your programming style and task at hand.
RegExp - JavaScript
regexp.prototype[@@match]() per
forms match to given string and returns match result.
...the line splitting provided in this example works on all plat
forms.
... using regular expression on multiple lines let s = 'please yes\nmake my day!' s.match(/yes.*day/); // returns null s.match(/yes[^]*day/); // returns ["yes\nmake my day"] using a regular expression with the sticky flag the sticky flag indicates that the regular expression per
forms sticky matching in the target string by attempting to match starting at regexp.prototype.lastindex.
String.prototype.normalize() - JavaScript
there are two main normalization
forms, one based on canonical equivalence and the other based on compatibility.
...in the example below we normalize two representations of the character "ñ": let string1 = '\u00f1'; // ñ let string2 = '\u006e\u0303'; // ñ string1 = string1.normalize('nfd'); string2 = string2.normalize('nfd'); console.log(string1 === string2); // true console.log(string1.length); // 2 console.log(string2.length); // 2 composed and decomposed
forms note that the length of the normalized form under "nfd" is 2.
... as with canonical normalization, you can ask for decomposed or composed compatible
forms by passing "nfkd" or "nfkc", respectively.
Digital audio concepts - Web media technologies
because of all these factors, and because speech wave
forms are typically less complex than music, high (and more specifically "high enough") fidelity reproduction of speech can be achieved at a relatively low bit rate.
... on top of simplifying the sound through psychoacoustic analysis, codecs use other algorithms and trans
forms to further simplify and reduce the size of the audio.
...the options tend to revolve around choosing the method by which the encoder per
forms the encoding and how much time and processor power it's allowed to consume in order to do so.
Guide to streaming audio and video - Web media technologies
https live streaming https live streaming (hls) is a protocol developed by apple and supported by safari on all of their plat
forms.
... hls uses playlists to allow the user to not only select the media to stream, but also to choose among versions or
forms of the same media.
...additionally,
forms of the stream can be provided which are optimized for different network conditions.
How to turn off form autocompletion - Web security
however, some data submitted in
forms either are not useful in the future (for example, a one-time pin) or contain sensitive information (for example, a unique government identifier or credit card security code).
... disabling autocompletion to disable autocompletion in
forms, you can set the autocomplete attribute to "off": autocomplete="off" you can do this either for an entire form, or for specific input elements in a form: <form method="post" action="/form" autocomplete="off"> […] </form> <form method="post" action="/form"> […] <div> <label for="cc">credit card:</label> <input type="text" id="cc" name="cc" autocomplete="off"> </div> </form> ...
...setting autocomplete="off" on fields has two effects: it tells the browser not to save data inputted by the user for later autocompletion on similar
forms, though heuristics for complying vary by browser.
Tutorials
advanced level html
forms forms are a very important part of the web — these provide much of the functionality you need for interacting with websites, e.g.
...this module gets you started with creating the client-side parts of
forms.
... advanced level using css trans
forms apply rotation, skewing, scaling, and translation using css.
WebAssembly Concepts - WebAssembly
webassembly goals webassembly is being created as an open standard inside the w3c webassembly community group with the following goals: be fast, efficient, and portable — webassembly code can be executed at near-native speed across different plat
forms by taking advantage of common hardware capabilities.
...mobile and other resource-constrained plat
forms can further amplify these performance bottlenecks.
... emscripten trans
forms the compiled result of clang+llvm into a .wasm binary.
Modules - Archive of obsolete content
this object
forms the central access point for all functionality provided by the host application.
...a wrapper behaves exactly like the wrapped object, with one difference: for each property access/function it per
forms an access check to make sure that the calling script is actually allowed to access/call that property/function.
Chrome Authority - Archive of obsolete content
commands that build a manifest, like "jpm xpi" or "jpm run", will scan all included modules for use of cc/ci aliases (or the expanded components.classes
forms).
... it will emit a warning if it sees the expanded
forms, or if it sees a use of e.g.
File I/O - Archive of obsolete content
path + "\\" : path + "/") + "myfile.txt"; is possible, but nsifile.append() is much easier to read and is guaranteed to work on all plat
forms.
...in this case an nsichannel object has to be explicitly created from the file: components.utils.import("resource://gre/modules/netutil.jsm"); // content type hint is useful on mobile plat
forms where the filesystem // would otherwise try to determine the content type.
Finding window handles - Archive of obsolete content
note: starting in gecko 17.0, nsibasewindow.nativehandle provides the handle (hwnd [widows], gdkwindow* [linux], nswindow* [macosx],...) of a top-level window, for all plate
forms, as a string.
... when working on windows plat
forms, many apis and frameworks require a window handle (hwnd type).
Running applications - Archive of obsolete content
using nsilocalfile.launch() this method is not implemented on all plat
forms, especially not on unix/linux!
... see nsilocalfile.launch() for details and make sure that all your target plat
forms support this method!
Getting Started with Firefox Extensions - Archive of obsolete content
extensions now exist in 3 different
forms: add-ons sdk extensions (also known as jetpacks), bootstrapped extensions and traditional extensions.
...xpi (pronounced "zippy") stands for cross-platform installer, because the same installer file can work on all plat
forms firefox supports.
The Box Model - Archive of obsolete content
the label element should be used mainly for text in xul
forms, such as the ones you see in the firefox options / preferences window.
... since xul documents are strict xml, you can only use strict xhtml in xul, and not the more loosely-formatted
forms of html.
The Essentials of an Extension - Archive of obsolete content
there are also downloadable tools for all plat
forms that generate them.
...also have a look at the plurals and localization article, that covers a localization feature in firefox that allows you to further refine this last example to handle different types of plural
forms that are also language-dependent.
Structure of an installable bundle - Archive of obsolete content
instead, you need to use manifest flags, such as the os and abi flags, in your chrome manifest to specify components that should be loaded for specific plat
forms.
... in some cases a single extension or application may wish to include binary component or plugins for multiple plat
forms, or theme authors might want to include multiple platform-specific jar files.
Creating a Release Tag - Archive of obsolete content
remember to also check out extra mac and win32 files that aren't normally checked out on linux or the tag won't build on those plat
forms.
... cvs co -r netscape_6_2_release mozilla/client.mk cd mozilla gmake -f client.mk checkout create a mini branch for the pull scripts on all three plat
forms so we can change them without changing anything on the original branch.
Documentation for BiDi Mozilla - Archive of obsolete content
note that we are not affected by buggy bidi implementations on specific plat
forms, since the platform never sees a text fragment with mixed directionality, and is not expected to do anything more complicated than displaying left-to-right text from left to right or right-to-left text from right to left.
...lementation comments nsibidi intl\unicharutil\public\nsibidi.h intl\unicharutil\src\nsbidiimp.cpp implementation of the unicode bidi algorithm nsiubidiutils intl\unicharutil\public\nsiubidiutils.h intl\unicharutil\src\nsbidiutilsimp.cpp utilities for bidi processing, including: character classification symmetric swapping reordering shaping numeric translation conversion to/from presentation
forms nsbidipresutils layout/base/nsbidipresutils.cpp utilities for the layout engine including: resolve frames by bidi level split framesreorder frames format bidi text support for deletion and insertion of frames by editor nsbiditextframe layout/generic/nsbidiframes.cpp subclass of nsframe with additional method setoffsets, to adjust mcontentoffset and mcontentlength during bidi processing ...
Layout System Overview - Archive of obsolete content
presumably it is more time and space-efficient to prevent frame creation for elements with no display.) the frame manager also maintains a list of
forms and form controls, as content nodes.
...these collections of
forms and form controls should be removed eventually.
GRE - Archive of obsolete content
mozilla suite: the old gre there are two different
forms for the gre: the "old" gre was part of the mozilla application suite.
...xulrunner supports or is planned to support embedding on all three major plat
forms (windows, mac, and linux).
JavaScript crypto - Archive of obsolete content
rg"> <p><input type=hidden name=cert_request value=""> <p>name: <input type=text name=name value=""> <p>password: <input type=password name="password" value=""> <p><input type=submit name="send" value="submit"> </form> <script> /* the following values could be filled in by the server cgi */ var authenticator = "server_magic"; var keytransportcert = null; var crmfobject = null; var form = document.
forms[0]; function validate() { // generate keys for nsm.
...ertificate</p> <form name="reqform"> <p><input type=submit name="load" value="submit"></p> </form> <script> /* the following values could be filled in by the server cgi */ var nickname= "mycertnickname"; var cert = "mkjflakdjfiwjflaksufklasf ..."; var forcebackup = false; function loadcertificate() { window.crypto.importusercertificates(nickname, cert, forcebackup); return false; } document.
forms[0].onsubmit = loadcertificate; </script> signing text domstring signtext(domstring stringtosign, domstring caoption /* ...
Menu - Archive of obsolete content
on some plat
forms this character is underlined in the label.
...fancy separators may behave differently on different plat
forms, however.
Migrate apps from Internet Explorer to Mozilla - Archive of obsolete content
documentfragment transformtofragment(node source, document owner) trans
forms the node source by applying the stylesheet imported using the importstylesheet method and generates a documentfragment.
... document transformtodocument(node source) trans
forms the node source by applying the stylesheet imported using the importstylesheet method and returns a standalone dom document.
Mozilla Application Framework - Archive of obsolete content
tinderbox our 24/7 build and test webtool that constantly builds, tests, and reports on the mozilla application suite on multiple plat
forms so you can see the state of the application at any given point in time.
... mozilla has been ported to more than a dozen plat
forms including windows (95, 98, nt, 2000, xp, ce), mac os x, linux, solaris, beos, openvms, os/2, aix, and hp-ux.
Mozilla Crypto FAQ - Archive of obsolete content
note that due to various implementation issues, psm support for mozilla on the macintosh is lagging somewhat behind psm support on windows, linux, and other plat
forms.
...the government also claimed that publication of cryptographic software in electronic form made such functional use easier than publication in printed form, and that that was sufficient to justify treating the two
forms differently in the regulations.
Tamarin-central rev 703:2cee46be9ce0 - Archive of obsolete content
testing summary acceptance tests have passed on the following supported plat
forms: * windows, 32 & 64 bit * mac ox x ppc & intel, 32 bit * linux, 32 bit * windows mobile arm version asc-4200 of the actionscript compiler was used for all tests.
... buildsize flash10576k tc-700740k tc-703655k known issues known failures in the acceptance testsuite include: number failures in testsuite when running on linux windows mobile system.privatebytes and -memstats privatebytes always returns 0 amd64 longjmp hack needs reengineering on non-windows plat
forms different runtime errors when -dforcemir set in acceptance test run arm: math failures running with thumb or arm jit and interp.
When To Use ifdefs - Archive of obsolete content
there are three major kinds of ifdefs in use in the mozilla tree: platform/widget ifdefs, feature ifdefs, and application-specific ifdefs: platform/widget ifdefs the mozilla code will frequently need to differentiate between code for different plat
forms or widget sets.
...the only time when they might be a problem is in cross-platform extension code and locales: since this code is downloaded on multiple plat
forms, platform-specific ifdefs are generally out of the question.
icon - Archive of obsolete content
some plat
forms display these buttons with a small icon indicating their usage.
...see the appearance of the different icons on some available plat
forms.
Introduction to XUL - Archive of obsolete content
ui designers will be able to create ui descriptions which will work on multiple plat
forms.
... but proper ui descriptions which take into account various plat
forms' differing ideas about proper placement of such things as dialog buttons will require some platform-specific work.
MenuButtons - Archive of obsolete content
in this situation, this menuitem per
forms the same operation as pressing the regular part of the button.
... the effect is a button that per
forms one command with a menu for other commands.
Menus - Archive of obsolete content
or, you could write code that handles multiple plat
forms in different ways.
...on some plat
forms, adding an access key will underline a letter in the menu label indicating the key to press.
button - Archive of obsolete content
some plat
forms display these buttons with a small icon indicating their usage.
...see the appearance of the different icons on some available plat
forms.
Archived Mozilla and build documentation - Archive of obsolete content
mozprocess mozprocess provides python process management via an operating system and platform transparent interface to mozilla plat
forms of interest.
... porting nspr to unix plat
forms last modified 16 july 1998 priority content update: i've removed documents from this list that have been migrated into the wiki.
Gecko Compatibility Handbook - Archive of obsolete content
because of gecko's cross-platform nature, functionality is generally very much the same on different plat
forms unlike internet explorer for mac and ie for windows, which are very different programs and so may behave quite differently from each other.
... example - putting
forms in tables invalid html to eliminate line break in <form>.
2006-11-03 - Archive of obsolete content
fix host_libidl_libs originally posted on october 29th: gery gery claims to have discovered a problem when he compiles mozilla across different plat
forms when pkg_config is used.
...paul explains that his goal is to do only singular sets of builds where the coverage of all the plat
forms is constant.
Introduction to SSL - Archive of obsolete content
if the client can be successfully authenticated, the server uses its private key to decrypt the premaster secret, then per
forms a series of steps (which the client also per
forms, starting from the same premaster secret) to generate the master secret.
...if the server requires client authentication, the server per
forms the steps described in "client authentication." after the steps described here, the server must successfully use its private key to decrypt the premaster secret the client sends in step 4 of "the ssl handshake." otherwise, the ssl session will be terminated.
Theme changes in Firefox 3 - Archive of obsolete content
all file list all plat
forms file description of change browser/themes/*/browser/browser.css the width of the drag and drop indicator is no longer calculated during the drag (tabbrowser.xml).
... changes in browser --- changes in global all plat
forms the yellow background for the location bar has been deprecated; instead, themes should style the new #identity-box element depending on its verifieddomain/verifiedidentity class.
Browser Feature Detection - Archive of obsolete content
document.title true true true document.referrer true true true document.domain true true true document.url true true true document.body true true true document.images true true true document.applets true true true document.links true true true document.
forms true true true document.anchors true true true document.cookie true true true document.open() true true true document.close() true true true document.write() true true true document.writeln() true true true document.getelementbyid() true true true documen...
...upported': false}, {name: 'getelementsbytagname', 'supported': false}, {name: 'title', 'supported': false}, {name: 'referrer', 'supported': false}, {name: 'domain', 'supported': false}, {name: 'url', 'supported': false}, {name: 'body', 'supported': false}, {name: 'images', 'supported': false}, {name: 'applets', 'supported': false}, {name: 'links', 'supported': false}, {name: '
forms', 'supported': false}, {name: 'anchors', 'supported': false}, {name: 'cookie', 'supported': false}, {name: 'open', 'supported': false}, {name: 'close', 'supported': false}, {name: 'write', 'supported': false}, {name: 'writeln', 'supported': false}, {name: 'getelementbyid', 'supported': false}, {name: 'getelementsbyname', 'supported': false} ], 'domcore2': [ {name: 'doctype', ...
Community - Archive of obsolete content
if you know of useful mailing lists, newsgroups, forums, or other communities related to x
forms, please link to them here.
... mailing list newsgroup rss feed irc channel w3c
forms mailinglist x
forms development blog ...
Anatomy of a video game - Game development
it is passed * the domhighrestimestamp for the time it represents (which, again, is always * last update + mygame.ticklength unless a pause feature is added, etc.) * * setinitialstate() per
forms whatever tasks are leftover before the mainloop must run.
... an important thing to remember for managed plat
forms, like the web, is that your loop may stop execution for significant periods of time.
Game promotion - Game development
the more information you can include the better — you should include screenshots, description, trailer, press kit, requirements, available plat
forms, support details and more.
...be sure to check first if they are dealing with specific genres of games or plat
forms, so you don't send them something that is not relevant to them in the first place.
Implementing game control mechanisms - Game development
one of html5's main advantages as a game development platform is the ability to run on various plat
forms and devices.
... in the following articles we will show how to implement various different control mechanisms for captain rogers to support different plat
forms — from touch on mobile, through keyboard/mouse/gamepad on desktop, to more unconventional ones like tv remote, shouting to or waving your hand in front of the laptop, or squeezing bananas.
Plug-in Development Overview - Gecko Plugin API Reference
for more information about mime types, see these mime rfcs: rfc-2045: "multipurpose internet mail extensions (mime) part one: format of internet message bodies" rfc-2046: "multipurpose internet mail extensions (mime) part two: media types" rfc-4288: "media type specifications and registration procedures" there are some variations to how plug-ins are handled on different plat
forms.
... building, plat
forms, and compilers the header files and some basic examples for npapi plugins are found in the npapi-sdk project (google code).
Index - MDN Web Docs Glossary: Definitions of Web-related terms
506 x
forms codingscripting, glossary, obsolete, x
forms x
forms is a convention for building web
forms and processing form data in the xml format.
... 524 mime beginner, glossary, infrastructure, mime mime "multipurpose internet mail extensions" is a standard to describe documents in other
forms beside ascii text, e.g.
MVC - MDN Web Docs Glossary: Definitions of Web-related terms
so for example, our shopping list could have input
forms and buttons that allow us to add or delete items.
... in the early days of the web, mvc architecture was mostly implemented on the server-side, with the client requesting updates via
forms or links, and receiving updated views back to display in the browser.
JavaScript basics - Learn web development
this happens in games, in the behavior of responses when buttons are pressed or with data entry on
forms; with dynamic styling; with animation, etc.
... = let myvariable = 'bob'; equality this per
forms a test to see if two values are equal.
Advanced text formatting - Learn web development
this simply wraps around your contact details, for example: <address> <p>chris mills, manchester, the grim north, uk</p> </address> it could also include more complex markup, and other
forms of contact information, for example: <address> <p> chris mills<br> manchester<br> the grim north<br> uk </p> <ul> <li>tel: 01234 567 890</li> <li>email: me@grim-north.co.uk</li> </ul> </address> note that something like this would also be ok, if the linked page contained the contact information: <address> <p>page written by <a href="../authors/chris-mills/">c...
...the above date could be written as: 20 january 2016 20th january 2016 jan 20 2016 20/01/16 01/20/16 the 20th of next month 20e janvier 2016 2016年1月20日 and so on but these different
forms cannot be easily recognised by computers — what if you wanted to automatically grab the dates of all events in a page and insert them into a calendar?
Video and audio content - Learn web development
due to the intricacies of ensuring your app's media is viewable across every combination of browsers, plat
forms, and devices you wish to reach, choosing the best combination of codecs and container can be a complicated task.
...including webm and mp4 sources should be enough to play your video on most plat
forms and browsers these days.
Learning area release notes - Learn web development
our web
forms learning module now has "test your skills" assessments accompanying the articles.
... march 2020 you'll now find "test your skills" assessments accompanying the articles in the following modules: css building blocks javascript first steps javascript building blocks introducing javascript objects january 2020 the html
forms module has been significantly updated: it has been retitled web
forms, and moved out of the html topic area to recognise that it covers more than just html form elements — it also covers styling, validation, the basics of how to send data and process it on the server, and more besides.
Server-side web frameworks - Learn web development
the field definitions may also specify their maximum size, default values, selection list options, help text for documentation, label text for
forms etc.
...with asp.net you can quickly create web sites based on html, css, and javascript, scale them for use by millions of users and easily add more complex capabilities like web apis,
forms over data, or real time communications.
Introduction to automated testing - Learn web development
the basics: manual tests the browserstack live dashboard allows you to choose what device and browser you want to test on — plat
forms in the left column, devices on the right.
... screenshots: enter a url, choose the browsers/devices/plat
forms you are interested in, then press generate screenshots — browserstack will take screenshots of your site in all those different browsers then make them available to you to view and download.
Introduction to cross browser testing - Learn web development
now you know your target testing plat
forms, you should go back and review the required featureset and what technologies you are going to use.
...the same browser version on different desktop plat
forms, or a few different versions of the same browser on the same platform) to see how widely the bug persists.
Learn web development
web
forms — working with user data web
forms are a potent tool for interacting with users — most commonly, they are used for collecting data from users, or allowing them to control a user interface.
... in the articles listed below, we'll cover all the essential aspects of structuring, styling, and interacting with web
forms.
Accessibility API cross-reference
alert alert alert alert, alertdialog content changes over time, such as animated gif animation n/a no spec n/a a section that
forms an independent part of a document, page, or site.
... column n/a n/a n/a the heading of a table's column columnheader column_header column_header, table_column_header columnheader <th scope=col> edit control with drop down list box, different from droplist combobox combo_box combo_box combobox abstract role - a form of widget that per
forms an action but does not receive input data.
Mozilla accessibility architecture
common implementations shared by html and xul implementations accessible/src/html/ document and html object implementations accessible/src/xul/ user interface and xul object implementations accessible/src/msaa/ windows implementations accessible/src/atk/ atk implementations, may eventually be used on plat
forms other than linux and unix accessible/src/mac/ empty implementations of platform-specific classes for os x.
... accessible/src/other/ empty implementations of platform-specific classes so that builds don't fail on plat
forms currently not-supported where we put toolkit-specific code because atk and msaa are different accessibility api toolkits which share only about 75% of their code, there is a lot of toolkit-specific code that needs to live somewhere.
Chrome registration
component component {00000000-0000-0000-0000-000000000000} components/mycomponent.js [flags] in
forms mozilla about a component cid implemented by an xpcom component implemented in javascript (or another scripting language, if applicable).
...these packages contain three different sets of files, for windows and os/2, macintosh, and unix-like plat
forms.
How Mozilla's build system works
brary_name = gklayout export_library = 1 is_component = 1 module_name = nslayoutmodule cppsrcs = \ nslayoutmodule.cpp \ $(null) shared_library_libs = \ $(dist)/lib/$(lib_prefix)gkhtmlbase_s.$(lib_suffix) \ $(dist)/lib/$(lib_prefix)gkhtmldoc_s.$(lib_suffix) \ $(dist)/lib/$(lib_prefix)gkhtml
forms_s.$(lib_suffix) \ $(dist)/lib/$(lib_prefix)gkhtmlstyle_s.$(lib_suffix) \ $(dist)/lib/$(lib_prefix)gkhtmltable_s.$(lib_suffix) \ $(dist)/lib/$(lib_prefix)gkxulbase_s.$(lib_suffix) \ $(dist)/lib/$(lib_prefix)gkbase_s.$(lib_suffix) \ $(dist)/lib/$(lib_prefix)gkconshared_s.$(lib_suffix) \ $(dist)/lib...
...note the use of lib_prefix and lib_suffix to make this work on all plat
forms.
SVG Guidelines
nested trans
forms some editors use <g> tags to do nested trans
forms, which is usually not needed.
... instead of using css/svg trans
forms, apply directly the transform on the path/shape definition.
Overview of Mozilla embedding APIs
do_queryreferent this function is the equivilent of do_queryinterface except that it per
forms the qi through a weak reference.
...on most plat
forms this involves displaying a native print dialog box.
Gecko Keypress Event
there are also some differences between the plat
forms, as described in the following sections.
...there should be no chrome access keys with punctuation characters or other characters that would normally require depressing the shift key.) during accel key handling, if the event includes the shift modifier, but an alternative charcode is not a bicameral letter (i.e., it does not have upper and lower case
forms), then the shift modifier state should be ignored if there is no exactly matching handler (requiring shift to be down).
Mozilla Content Localized in Your Language
formal and informal
forms, and separators (, or .) date format what are the date formats for weeks and months are expressed in the following
forms: 1)fully spelled out, 2).
...if yes, list all
forms of plural
forms and examples if there is more than one.
Creating localizable web applications
use gettext plurals whenever you put numbers in your messages, make it possible to use different singular and plural
forms.
...while this is true for english, it should be noted that some languages require different
forms of strings for numbers greater than 1 as well.
Basics
when you left-click any individual entry, it should toggle between its expanded and unexpanded
forms.
...there are links to more samples, screenshots and instructions on how to download fonts for various plat
forms.
DMD
some plat
forms (linux, mac, android) require stack fixing, which adds missing filename, function name and line number information.
...for a heap scan log, this per
forms a conservative pointer analysis on the contents of each block, changing any value that is a pointer into the middle of a live block into a pointer to the start of that block.
Memory reporting
on plat
forms that allow it, they count the actual memory in use, including "slop" bytes caused by the heap allocator rounding up request sizes (a.k.a.
... sometimes you may need variations on the above
forms.
TimerFirings logging
2088737280[7f606bf68140]: [30710] fn timer (one_shot 16 ms): [from dladdr] #0: ???[/home/njn/moz/mi1/o64/dist/bin/libxul.so +0x2144f94] 2088737280[7f606bf68140]: [30710] fn timer (one_shot 16 ms): [from dladdr] #0: mozilla::refreshdrivertimer::timertick(nsitimer*, void*) (/home/njn/moz/mi1/o64/layout/b third, on other plat
forms dladdr is not implemented or doesn't work well, and the output will look like the followin.
... if an unannotated timer function appears frequently it is worth explicitly annotating it so that it will be usefully identified on other plat
forms.
Performance
it is available on all plat
forms and release channels, and also supports remote profiling b2g and fennec.
... timerfirings logging (all plat
forms) timerfirings logging is a built-in logging mechanism that prints data on every time fired.
Nonblocking IO In NSPR
fundamentally, this constraint is due to the fact that nonblocking i/o and <tt>select()</tt> are only available to sockets on some plat
forms (e.g., winsock).
... current status implemented across all supported plat
forms.
Anonymous Shared Memory
on some plat
forms, no real file backs the shared memory.
... on plat
forms where the shared memory is backed by a file, the file's name in the filesystem is visible to other processes for only the duration of the creation of the file, hopefully a very short time.
Atomic Operations
atomic operations functions the api defined for the atomic functions is consistent across all supported plat
forms.
...for such systems, nspr per
forms atomic operations just as efficiently as the client could.
Introduction to NSPR
it's usually not necessary to create a global thread explicitly unless you are planning to port your code only to plat
forms that provide threading services with which you are familiar or unless the thread will be executing code that might directly call blocking os functions.
...however, because of the multiple strategies to provide execution vehicles for threads on various host plat
forms, priorities are not a clearly defined abstraction in nspr.
NSPR Types
or algebraic operations: 8-, 16-, and 32-bit integer types 64-bit integer types floating-point number type for convenience, nspr also provides type definitions with platform-dependent bit widths: native os integer types 8-, 16-, and 32-bit integer types signed integers print8 print16 print32 unsigned integers pruint8 pruint16 pruint32 64-bit integer types different plat
forms treat 64-bit numeric fields in different ways.
...conscientious use of these macros ensures portability of code to all the plat
forms supported by nspr and still provides optimal behavior on those systems that treat long long values directly.
PR_Initialize
this approach con
forms to standard c programming practice.
...this approach con
forms to standard c programming practice.
PR_MkDir
caveat: the mode parameter is currently applicable only on unix plat
forms.
... it may be applicable to other plat
forms in the future.
PR_Open
this feature is currently only applicable on unix plat
forms.
... it is ignored by any other platform but it may apply to other plat
forms in the future.
PR_OpenAnonFileMap
on unix plat
forms, pr_openanonfilemap uses dirname as a directory name, without the trailing '/', to contain the anonymous file.
... on windows plat
forms, dirname is ignored.
An overview of NSS Internals
in order to allow interoperability between software and devices that perform cryptographic operations, nss con
forms to a standard called pkcs#11.
...instead of simply verifying that the requester of a certificate is in control of an administrative email address at the desired web site's domain, it's required that the ca per
forms a verification of real world identity documents (such as a company registration document with the country's authority), and it's also required that a browser software per
forms a revocation check with the ca, prior to granting validity to the certificate.
NSS 3.14.3 release notes
new functions in pk11pub.h pk11_signwithsymkey - similar to pk11_sign, per
forms a signing operation in a single operation.
... however, unlike pk11_sign, which uses a seckeyprivatekey, pk11_signwithsymkey per
forms the signature using a symmetric key, such as commonly used for generating macs.
NSS 3.15 release notes
in pk11pub.h pk11_decrypt - per
forms decryption as a single pkcs#11 operation (eg: not multi-part).
... pk11_encrypt - per
forms encryption as a single pkcs#11 operation (eg: not multi-part).
nss tech note6
the following applies to nss 3.11 : the low-level freebl cryptographic code has been separated from softoken on all plat
forms.
... even on plat
forms for which there is only one implementation of freebl, there is now a separate freebl shared library.
Overview of NSS
nss includes a framework to which developers and oems can contribute patches, such as assembler code, to optimize performance on their plat
forms.
... nss 3.x has been certified on 18 plat
forms.
FIPS mode of operation
per
forms pair-wise consistency test.
... fc_wrapkey: rsa key wrapping fc_unwrapkey: rsa key wrapping fc_derivekey: diffie-hellman, ec diffie-hellman random number generation functions fc_seedrandom fc_generaterandom: per
forms continuous random number generator test.
NSS_3.12.3_release_notes.html
the new behavior con
forms to rfc 2818.
...bug 452391: certutil -k incorrectly reports ec private key as an orphan bug 453234: support for seed cipher suites to tls rfc4010 bug 453364: improve pk11_cipherop error reporting (was: pk11_createcontextbysymkey returns null bug 456406: slot list leaks in symkeyutil bug 461085: rfe: export function cert_comparecerts bug 462293: crash on fork after softoken is dlclose'd on some unix plat
forms in nss 3.12 bug 463342: move some headers to freebl/softoken bug 463452: sql db creation does not set files protections to 0600 bug 463678: need to add rpath to 64-bit libraries on hp-ux bug 464088: option to build nss without dbm (handy for wince) bug 464223: certutil didn't accept certificate request to sign.
Multithreading in Necko
dns thread (0-1) on most plat
forms dns requests a processed on a background thread.
...in this way, necko takes advantage of the plat
forms specific routines for dns lookups.
Rebranding SpiderMonkey (1.8.5)
it also allows these instructions to apply to a wide range plat
forms without introducing more software dependencies.
...if this is not desirable, you can issue the following command on unix systems: sed -i "s/mozjs185/$brand/" /usr/bin/js-config which per
forms a simple text replacement of mozjs185 with your branding on the js-config script.
SpiderMonkey Build Documentation
to generate a compile_commands.json with the spidermonkey configure script, enable the compiledb backend, like this: /bin/sh ../configure.in <options> --enable-build-backends=compiledb,recursivemake (recursivemake is there as you'd likely also want to be able to build!) windows builds since version 28, threadsafe builds are the default, and should work out of the box on all posix plat
forms.
... note: in spidermonkey 1.8.5, the js-config script is not generated properly on many plat
forms.
Creating JavaScript tests
please keep in mind that the javascript test suite is run on a wide variety of wildly varying hardware pla
forms, from phones all the way up to servers.
... even tests that check for polynomial time complexity will start to fail in a few years when they have sped up enough to run faster than the granularity of the os scheduler or when run on plat
forms with higher latencies than your development workstation.
Tracing JIT
nanojit/assembler.* the nanojit/assembler.cpp and nanojit/assembler.h files define the class assembler, which trans
forms lins values into nins values.
... in other words, an assembler trans
forms lir code into native code.
JSAPI User Guide
by default, the javascript engine per
forms garbage collection when it has no other choice except to grow the process.
...js_maybegc per
forms garbage collection only if it is likely to reclaim a worthwhile amount of memory.
JS_GC
per
forms garbage collection in the js memory pool.
...obsolete since jsapi 50 description js_gc per
forms garbage collection of js objects, strings and other internal data structures that are no longer reachable in the specified context or runtime.
Parser API
patterns interface pattern <: node { } javascript 1.7 introduced destructuring assignment and binding
forms.
... all binding
forms (such as function parameters, variable declarations, and catch block headers) accept array and object destructuring patterns in addition to plain identifiers.
Secure Development Guidelines
unlock(locka); unlock(lockb); } writing secure code: good coding practices banned api list badly designed apis can often lead to vulnerabilities it’s too easy to use the api inappropriately for example, consider the libc string handling apis strcpy() per
forms no bounds checking strncpy() doesn’t always 0-terminate strncat() length parameter is very confusing banned api list examples of incorrect strncat usage buffer overflow strncat(buffer, string, sizeof(buffer)); off-by-one strncat(buffer, string, sizeof(buffer) – strlen(string)); correct usage strncat(buffer, string, sizeof(buffer) – strlen(string)...
... snprintf, vsnprintf return value differs on various plat
forms.
Accessibility API Implementation Details
we provide for them the support of these products on windows, linux/unix and os x plat
forms.at developmentthe accessibility of computer software has seen drastic improvements over the past two decades.
... x
forms accessibilitythis article provides a quick guide to how accessibility is handled in gecko for x
forms.xul accessibilitythis article shows how xul control elements are mapped to accessibility api.
Bundling multiple binary components
actually, nspr has portable versions of those features that work across plat
forms.
... this approach uses one binary component for each version of gecko and platform, plus the stub loader component therefore, to support 2 gecko versions on three plat
forms, you need seven components (6 real components + 1 stub).
An Overview of XPCOM
interfaces and programming by contract an interface
forms a contractual agreement between components and clients.
...but enabling exceptions and rtti may not be an option because of performance overhead and compatibility on many plat
forms, so xpcom does things differently.
Starting WebLock
the type of this variable is print64, but this type is not represented as a primitive on all plat
forms.
... on some plat
forms, print64 is a struct with two fields - a high and a low 32-bit integer.
Observer Notifications
this topic indicates when the extension manager per
forms some action.
... topic data description passwordmgr-found-form noautofill
forms a login is available for this form, but autofill of
forms is disabled, so the form was not automatically filled out.
nsIAlertsService
only available on supported plat
forms.
...only available on supported plat
forms.
nsIAppShell
on some plat
forms this will be a no-op.
...on some plat
forms (those that do not use any "additional methods") this will be a no-op.
nsIAppShellService
this will usually be false on all non-mac plat
forms.
...(and at application startup, on plat
forms that do not normally quit when the last window has closed, call enter once, but not exit) void enterlastwindowclosingsurvivalarea(); parameters none.
nsIDOMWindowUtils
when this is set, the aoffset and alength are offset and length in/of the content generated with xp line breaks (i.e., "\n" on all plat
forms).
...when this is set, the aoffset and alength are offset and length in/of the content generated with xp line breaks (i.e., "\n" on all plat
forms).
nsIEnvironment
note: * for unix/linux plat
forms we follow the unix definition: an environment variable exists when getenv() returns a non-null value.
... for non-unix/linux plat
forms we have to fall back to a "portable" definition (which is incorrect for unix/linux!!!!) which simply checks whether the string returned by get() is empty or not.
nsILocalFile
persistentdescriptor acstring on some plat
forms, the value of nsifile.path may be insufficient to uniquely identify the file on the local file system.
...this routine only works on plat
forms which support the ability to open a folder.
Using nsILoginManager
defining an nsilogininfo object is simple: var nslogininfo = new components.constructor( "@mozilla.org/login-manager/logininfo;1", components.interfaces.nsilogininfo, "init" ); var logininfo = new nslogininfo( hostname,
formsubmiturl, httprealm, username, password, usernamefield, passwordfield ); examples creating a login for a web page var formlogininfo = new nslogininfo( 'http://www.example.com', 'http://login.example.com', null, 'joe', 'secret123', 'uname', 'pword' ); this login would correspond to a html form such as: <form action="http://login.example.com/foo/authenticate.cgi"> <div>please log in.<...
...ion required server: apache/1.3.27 www-authenticate: basic realm="exampleco login" creating a local extension login var extlogininfo = new nslogininfo( 'chrome://firefoo', null, 'user registration', 'bob', '123secret', "", "" ); from a component creating a new info block is done slightly differently: var nslogininfo = new constructor("@org/manager/ci.init"); var extlogininfo = new a
formsubmiturl, ausername, ausernamefield, ...
nsIMessenger
undo() per
forms the next undo transaction.
... redo() per
forms the next redo transaction.
nsIMsgFolder
flag(in unsigned long flag); void onflagchange(in unsigned long flag); void setprefflag(); nsimsgfolder getfolderswithflag(in unsigned long flags, in unsigned long resultsize, out unsigned long numfolders); nsisupportsarray getallfolderswithflag(in unsigned long aflag); void getexpansionarray(in nsisupportsarray expansionarray); acstring geturi
formsg(in nsimsgdbhdr msghdr); void deletemessages(in nsisupportsarray messages,in nsimsgwindow msgwindow, in boolean deletestorage, in boolean ismove, in nsimsgcopyservicelistener listener, in boolean allowundo); void copymessages(in nsimsgfolder srcfolder, in nsisupportsarray messages,in boolean ismove, in nsimsgwindow msgwindow,in nsimsgcopyservicelistener listener, in boolean isfo...
...fflag(); getfolderswithflag() nsimsgfolder getfolderswithflag(in unsigned long flags, in unsigned long resultsize, out unsigned long numfolders); getallfolderswithflag() nsisupportsarray getallfolderswithflag(in unsigned long aflag); getexpansionarray() void getexpansionarray(in nsisupportsarray expansionarray); geturi
formsg() acstring geturi
formsg()(in nsimsgdbhdr msghdr); deletemessages() void deletemessages(in nsisupportsarray messages, in nsimsgwindow msgwindow, in boolean deletestorage, in boolean ismove, in nsimsgcopyservicelistener listener, in boolean allowundo); copymessages() void copymessages...
nsIXSLTProcessor
transformtodocument() trans
forms the node source applying the stylesheet imported by importstylesheet().
...transformtofragment() trans
forms the node source applying the stylesheet imported by importstylesheet().
Mozilla technologies
the xml extras module is built by default on all plat
forms, and is included in the browser installers so it is available in the nightly builds.xpcomxpcom is a cross platform component object model, similar to microsoft com.
...for example, the mozilla x
forms project uses xtf to add support for the x
forms namespace.
Zombie compartments
any compartments with the following
forms are created by firefox for its own internal use, and can usually be ignored when looking for zombie compartments.
... for example, for an add-on that remembers passwords, visit a site that requires a password; for an add-on that per
forms an operation involving a specific page element such as an image or a chunk of text, perform that operation.
Drawing and Event Handling - Plugins
this parameter is valid only for the unix and ms windows plat
forms.
... event handling for windowless plug-ins on all plat
forms, platform-specific events are passed to windowless plug-ins through the npp_handleevent method.
Initialization and Destruction - Plugins
npp_new in
forms the plug-in of the creation of a new instance with the specified mime type.
...the browser calls the plug-in's np_shutdown function, which in
forms the plug-in that its library is about to be unloaded, and gives it a chance to cancel any outstanding i/o requests, delete threads it created, free any memory it allocated, and perform any other closing tasks.
Plug-in Development Overview - Plugins
for more information about mime types, see these mime rfcs: rfc-2045: "multipurpose internet mail extensions (mime) part one: format of internet message bodies" rfc-2046: "multipurpose internet mail extensions (mime) part two: media types" rfc-4288: "media type specifications and registration procedures" there are some variations to how plug-ins are handled on different plat
forms.
... building, plat
forms, and compilers the header files and some basic examples for npapi plugins are found in the npapi-sdk project (google code).
Color vision simulation - Firefox Developer Tools
the simulator in the accessibility inspector in firefox developer tools lets you see what a web page would look like to users with various
forms of color vision deficiency (better known as "color blindness"), as well as contrast sensitivity loss.
...the most common
forms of color blindness (commonly lumped together as "red-green color blindness") affect more men than women, because they are due to a mutation in a gene in the x chromosome, which men usually have only one copy of.
Accessibility Inspector - Firefox Developer Tools
note: the exposed information is the same across all plat
forms — the inspector exposes gecko's accessibility tree, rather than information from the platform accessibility layer.
... simulate the accessibility inspector offers (as of firefox 70), a simulator that lets you see what a web page would look like to users with various
forms of color vision deficiency (better known as "color blindness"), as well as contrast sensitivity loss.
Index - Firefox Developer Tools
4 color vision simulation accessibility, accessibility inspector, color blindness, devtools, guide, simulation, tools the simulator in the accessibility inspector in firefox developer tools lets you see what a web page would look like to users with various
forms of color vision deficiency (better known as "color blindness"), as well as contrast sensitivity loss.
...just hover over the rule: 73 visualize trans
forms guide, inspector, tools if you hover over a transform property in the rules view, you'll see the transformation overlaid in the page: 74 work with animations guide, inspector, tools this article covers three tools you can use to visualize and edit animations: 75 animation inspector (firefox 41 and 42) the animation inspector enables you to: ...
Intensive JavaScript - Firefox Developer Tools
requestanimationframe() tells the browser to run the given function in each frame, just before it per
forms a repaint.
...the code that actually per
forms the computations is exactly the same as the original code.
AudioWorkletProcessor.process - Web APIs
a node that trans
forms its input.
... a node that trans
forms its input, but has a so-called tail-time — this means that it will produce an output for some time even after its inputs are disconnected or are inactive (producing zero-channels).
BeforeInstallPromptEvent - Web APIs
beforeinstallpromptevent.plat
forms read only returns an array of domstring items containing the plat
forms on which the event was dispatched.
... example window.addeventlistener("beforeinstallprompt", function(e) { // log the plat
forms provided as options in an install prompt console.log(e.plat
forms); // e.g., ["web", "android", "windows"] e.userchoice.then(function(choiceresult) { console.log(choiceresult.outcome); // either "accepted" or "dismissed" }, handleerror); }); ...
Determining the dimensions of elements - Web APIs
most of the time these are the same as width and height of element.getboundingclientrect(), when there aren't any trans
forms applied to the element.
... in case of trans
forms, the offsetwidth and offsetheight returns the element's layout width and height, while getboundingclientrect() returns the rendering width and height.
DOMMatrix - Web APIs
dommatrix.scalenonuni
formself() modifies the matrix by applying the specified scaling on the x, y, and z axes, centered at the given origin.
... dommatrix.setmatrixvalue() replaces the contents of the matrix with the matrix described by the specified transform or trans
forms.
Document.lastModified - Web APIs
alert(document.lastmodified); // returns: tuesday, december 16, 2017 11:09:42 transforming lastmodified into a date object this example trans
forms lastmodified into a date object.
... let olastmodif = new date(document.lastmodified); transforming lastmodified into milliseconds this example trans
forms lastmodified into the number of milliseconds since january 1, 1970, 00:00:00, local time.
HTMLFormElement.elements - Web APIs
note: similarly, you can get a list of all of the
forms contained within a given document using the document's
forms property.
...s included by htmlformelement.elements and htmlformelement.length are the following: <button> <fieldset> <input> (with the exception that any whose type is "image" are omitted for historical reasons) <object> <output> <select> <textarea> no other elements are included in the list returned by elements, which makes it an excellent way to get at the elements most important when processing
forms.
In depth: Microtasks and the JavaScript runtime environment - Web APIs
it then runs any pending javascript tasks, then any pending microtasks, then per
forms any needed rendering and painting before looping again to check for pending tasks.
... worker event loop a worker event loop is one which drives a worker; this includes all
forms of workers, including basic web workers, shared workers, and service workers.
KeyboardEvent.getModifierState() - Web APIs
ogo key) not supported "scrolllock" during led for scroll lock turned on during led for scroll lock turned on, but typically this isn't supported by platform not supported while scrolllock is locked "shift" ⇧ shift key pressed "super" not supported "symbol" not supported "symbollock" not supported on the other plat
forms, "alt", "control" and "shift" may be supported.
...note that which modifier key makes it return true depends on plat
forms, browsers, and user settings.
KeyboardEvent - Web APIs
on those plat
forms, then, an auto-repeat key will generate the following sequence of events: keydown keypress keyup keydown keypress keyup <<repeating until the user releases the key>> keyup in these environments, unfortunately, there's no way for web content to tell the difference between auto-repeating keys and keys that are just being pressed repeatedly.
... auto-repeat handling prior to gecko 5.0 before gecko 5.0 (firefox 5.0 / thunderbird 5.0 / seamonkey 2.2), keyboard handling was less consistent across plat
forms.
Notifications API - Web APIs
the api is designed to be compatible with existing notification systems, across different plat
forms.
... concepts and usage on supported plat
forms, showing a system notification generally involves two things.
Using the Payment Request API - Web APIs
the payment request api provides a browser-based method of connecting users and their preferred payment systems and plat
forms to merchants that they want to pay for goods and services.
... in the following snippet, a merchant page per
forms this check, and if it returns true updates the checkout button to use paymentrequest instead of legacy web
forms.
Payment Request API - Web APIs
payment request concepts and usage many problems related to online shopping-cart abandonment can be traced to checkout
forms, which can be difficult and time consuming to fill out and often require multiple steps to complete.
... the payment request api is meant to reduce the number of steps needed to complete a payment online, potentially doing away with checkout
forms.
SVGGraphicsElement - Web APIs
svggraphicselement.getctm() returns a dommatrix representing the matrix that trans
forms the current element's coordinate system to its svg viewport's coordinate system.
... svggraphicselement.getscreenctm() returns a dommatrix representing the matrix that trans
forms the current element's coordinate system to the coordinate system of the svg viewport for the svg document fragment.
Data in WebGL - Web APIs
glsl data types <<document the basic types, vectors, etc; see data type (glsl) on the khronos webgl wiki>> glsl variables there are three kinds of "variable" or data storage available in glsl, each of which with its own purpose and use cases: attributes, varyings, and uni
forms.
... <<how to use>> uni
forms uni
forms are set by the javascript code and are available to both the vertex and fragment shaders.
Matrix math for the web - Web APIs
this article explores how to create matrices and how to use them with css trans
forms and the matrix3d transform type.
...matrices effectively remember every part of the previous trans
forms that were used to generate them.
Geometry and reference spaces in WebXR - Web APIs
geometry operations with matrices we offer a guide to matrix mathematics as it pertains to 3d geometry, including how matrices are used for the three primary trans
forms that need to be performed when rendering 3d scenes: translation is the use of a matrix to shift the position of a point through the virtual space.
...trans
forms can also be applied to vectors, since vectors are described using a coordinate value to define the direction and magnitude of the vector.
Movement, orientation, and motion: A WebXR example - Web APIs
suffice it to say that the vertex shader computes the position of each vertex given the initial positions of each vertex and the trans
forms that need to be applied to convert them to simulate the viewer's current position and orientation.
...then we pass the object's reference space into the applyviewercontrols() function, which returns a revised xrreferencespace that trans
forms the position and orientation of the object to take into account the movement, pitch, and yaw applied by the user using the keyboard and mouse.
Window.convertPointFromNodeToPage() - Web APIs
specifications this method was specified in the defunct 20 march 2009 working draft of css 2d trans
forms module level 3.
... it is not present in the current css trans
forms module level 1 working draft.
Window.convertPointFromPageToNode - Web APIs
specifications this method was specified in the defunct 20 march 2009 working draft of css 2d trans
forms module level 3.
... it is not present in the current css trans
forms module level 1 working draft.
XSLTProcessor - Web APIs
[throws] documentfragment xsltprocessor.transformtofragment(node source, document owner) trans
forms the node source by applying the stylesheet imported using the xsltprocessor.importstylesheet() function.
... [throws] document xsltprocessor.transformtodocument(node source) trans
forms the node source applying the stylesheet given importing using the xsltprocessor.importstylesheet() function.
ARIA: button role - Accessibility
space activates the button following button activation, focus is set depending on the type of action the button per
forms.
... best practices if a link per
forms the action of a button, giving the element role="button" helps assistive technology users understand the function of the element.
ARIA: textbox role - Accessibility
aria-multiline attribute if aria-multiline="true" is set, the at in
forms the user that the textbox supports multi-line input, with the expectation that enter or return will create a line break rather than submitting the form.
... javascript features all features associated with any and all properties and states must be maintained, and
forms submission on enter or return on a single line textbox needs to be handled.
Web applications and ARIA FAQ - Accessibility
in this example, the role="progressbar" attribute in
forms the browser that this element is actually a javascript-powered progress bar widget.
... an overview of accessible web applications and widgets accessible
forms the w3c's wai-aria frequently asked questions webaim's accessibility of rich internet applications ...
ARIA - Accessibility
in this example, the role="progressbar" attribute in
forms the browser that this element is actually a javascript-powered progress bar widget.
...learn how to improve accessibility of html
forms using additional aria attributes.
@font-feature-values - CSS: Cascading Style Sheets
formal syntax @font-feature-values <family-name># { <feature-value-block-list> }where <family-name> = <string> | <custom-ident>+<feature-value-block-list> = <feature-value-block>+where <feature-value-block> = <feature-type> '{' <feature-value-declaration-list> '}'where <feature-type> = @stylistic | @historical-
forms | @styleset | @character-variant | @swash | @ornaments | @annotation<feature-value-declaration-list> = <feature-value-declaration>where <feature-value-declaration> = <custom-ident>: <integer>+; examples using @styleset in a @font-feature-values rule /* at-rule for "nice-style" in font one */ @font-feature-values font one { @styleset { nice-style: 12; } } /* at-rule for "nice-style" in...
...to change preferences in firefox, visit about:config.opera android no support nosafari ios full support 9.3samsung internet android no support no@historical-
formschrome no support noedge no support nofirefox full support 34 full support 34 full support 24disabled disabled from version 24: this feature is behind the layout.css.font-feat...
OpenType font features guide - CSS: Cascading Style Sheets
sometimes it's substance, not just style there are some cases — like with font-variant-east-asian — that opentype features are directly tied to using different
forms of certain glyphs, which can impact meaning and readability.
... lining and oldstyle figures fractions, ordinals, and slashed zero east asian (font-variant-east-asian) this allows access to various alternate
forms of glyphs within a font.
backface-visibility - CSS: Cascading Style Sheets
(this property has no effect on 2d trans
forms, which have no perspective.) syntax /* keyword values */ backface-visibility: visible; backface-visibility: hidden; /* global values */ backface-visibility: inherit; backface-visibility: initial; backface-visibility: unset; the backface-visibility property is specified as one of the keywords listed below.
...); transform: rotatex(90deg) translatez(50px); } .bottom { background: rgba(196, 0, 196, 0.7); transform: rotatex(-90deg) translatez(50px); } /* make the table a little nicer */ th, p, td { background-color: #eeeeee; margin: 0px; padding: 6px; font-family: sans-serif; text-align: left; } result specifications specification status comment css trans
forms level 2the definition of 'backface-visibility' in that specification.
content - CSS: Cascading Style Sheets
the counter() function has two
forms: 'counter(name)' or 'counter(name, style)'.
... the counters() function also has two
forms: 'counters(name, string)' or 'counters(name, string, style)'.
font-family - CSS: Cascading Style Sheets
fangsong a particular style of chinese characters that are between serif-style song and cursive-style kai
forms.
...this is some example fangsong text with the chinese characters for "fangsong" in traditional and simple
forms, respectively: 仿宋體 仿宋体.
font-variant-numeric - CSS: Cascading Style Sheets
ar-nums; /* <numeric-spacing-values> */ font-variant-numeric: diagonal-fractions; /* <numeric-fraction-values> */ font-variant-numeric: stacked-fractions; /* <numeric-fraction-values> */ font-variant-numeric: oldstyle-nums stacked-fractions; /* global values */ font-variant-numeric: inherit; font-variant-numeric: initial; font-variant-numeric: unset; this property can take one of two
forms: either the keyword value normal or one or more of the other values listed below, space-separated, in any order.
...eas specifiedanimation typediscrete formal syntax normal | [ <numeric-figure-values> | <numeric-spacing-values> | <numeric-fraction-values> | ordinal | slashed-zero ]where <numeric-figure-values> = [ lining-nums | oldstyle-nums ]<numeric-spacing-values> = [ proportional-nums | tabular-nums ]<numeric-fraction-values> = [ diagonal-fractions | stacked-fractions ] examples setting ordinal numeric
forms html <p class="ordinal">1st, 2nd, 3rd, 4th, 5th</p> css /* this example uses the source sans pro opentype font, developed by adobe and used here under the terms of the sil open font license, version 1.1: http://scripts.sil.org/cms/scripts/page.php?item_id=ofl_web */ @font-face { font-family: "source sans pro"; font-style: normal; font-weight: 400; src: url("https://mdn.mozillademos.o...
font-variant - CSS: Cascading Style Sheets
stylistic(), historical-
forms, styleset(), character-variant(), swash(), ornaments(), annotation() specifies the keywords and functions related to the font-variant-alternates longhand property.
...it also applies to ::first-letter and ::first-line.inheritedyescomputed valueas specifiedanimation typediscrete formal syntax normal | none | [ <common-lig-values> | <discretionary-lig-values> | <historical-lig-values> | <contextual-alt-values> | stylistic( <feature-value-name> ) | historical-
forms | styleset( <feature-value-name># ) | character-variant( <feature-value-name># ) | swash( <feature-value-name> ) | ornaments( <feature-value-name> ) | annotation( <feature-value-name> ) | [ small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps ] | <numeric-figure-values> | <numeric-spacing-values> | <numeric-fraction-values> | ordinal | slashed-zero | <east-asian-va...
position - CSS: Cascading Style Sheets
it is positioned relative to the initial containing block established by the viewport, except when one of its ancestors has a transform, perspective, or filter property set to something other than none (see the css trans
forms spec), in which case that ancestor behaves as the containing block.
...positioned { position: absolute; background: yellow; top: 30px; left: 30px; } result fixed positioning fixed positioning is similar to absolute positioning, with the exception that the element's containing block is the initial containing block established by the viewport, unless any ancestor has transform, perspective, or filter property set to something other than none (see css trans
forms spec), which then causes that ancestor to take the place of the elements containing block.
rotate - CSS: Cascading Style Sheets
the rotate css property allows you to specify rotation trans
forms individually and independently of the transform property.
... html { font-family: sans-serif; } div { width: 150px; margin: 0 auto; } p { padding: 10px 5px; border: 3px solid black; border-radius: 20px; width: 150px; font-size: 1.2rem; text-align: center; } .rotate { transition: rotate 1s; } div:hover .rotate { rotate: 1 -0.5 1 180deg; } result specifications specification status comment css trans
forms level 2the definition of 'individual trans
forms' in that specification.
scale - CSS: Cascading Style Sheets
the scale css property allows you to specify scale trans
forms individually and independently of the transform property.
... border-box; } html { font-family: sans-serif; } div { width: 150px; margin: 0 auto; } p { padding: 10px 5px; border: 3px solid black; border-radius: 20px; width: 150px; font-size: 1.2rem; text-align: center; } .scale { transition: scale 1s; } div:hover .scale { scale: 2 0.7; } result specifications specification status comment css trans
forms level 2the definition of 'individual trans
forms' in that specification.
text-transform - CSS: Cascading Style Sheets
in greek (el), the lowercase sigma character has two
forms: σ and ς.
...in some cases, a hyphen is also removed upon uppercasing: an t-uisce trans
forms to an tuisce (and the hyphen is correctly reinserted by text-transform: lowercase).
matrix3d() - CSS: Cascading Style Sheets
a1a2a3a4b1b2b3b4c1c2c3c4d1d2d3d4 examples cube squashing example the following example shows a 3d cube created from dom elements and trans
forms, which can be hovered/focused to apply a matrix3d() transform to it.
... matrix3d( 1,0,0,0, 0,1,0,0, 0,0,1,0, -50,-100,0,1.1 ); } 50% { transform: matrix3d( 1,0,0,0, 0,1,0,0, 0,0,1,0, 0,0,0,0.9 ); } to { transform: matrix3d( 1,0,0,0, 0,1,0,0, 0,0,1,0, 50,100,0,1.1 ) } } result specifications specification status comment css trans
forms level 2the definition of 'matrix3d()' in that specification.
translateZ() - CSS: Cascading Style Sheets
result specifications specification status comment css trans
forms level 2the definition of 'transform' in that specification.
... editor's draft adds 3d transform functions to the css trans
forms standard.
transform-style - CSS: Cascading Style Sheets
formal definition initial valueflatapplies totransformable elementsinheritednocomputed valueas specifiedanimation typediscretecreates stacking contextyes formal syntax flat | preserve-3d examples transform style demonstration in this example we have a 3d cube created using trans
forms.
...} .top { background: rgba(210,210,0,.7); transform: rotatex(90deg) translatez(50px); } .bottom { background: rgba(210,0,210,.7); transform: rotatex(-90deg) translatez(50px); } javascript const cube = document.getelementbyid('example-element'); const checkbox = document.getelementbyid('preserve'); checkbox.addeventlistener('change', () => { if(checkbox.checked) { cube.style.trans
formstyle = 'preserve-3d'; } else { cube.style.trans
formstyle = 'flat'; } }) result specifications specification status comment css trans
forms level 2the definition of 'transform-style' in that specification.
translate - CSS: Cascading Style Sheets
the translate css property allows you to specify translation trans
forms individually and independently of the transform property.
...{ font-family: sans-serif; } div { width: 150px; margin: 0 auto; } p { padding: 10px 5px; border: 3px solid black; border-radius: 20px; width: 150px; font-size: 1.2rem; text-align: center; } .translate { transition: translate 1s; } div:hover .translate { translate: 200px 50px; } result specifications specification status comment css trans
forms level 2the definition of 'individual trans
forms' in that specification.
Event developer guide - Developer guides
the device on which the web browser is running can trigger events, for example due to a change in its position and orientation in the real world, as discussed partially by the page on orientation coordinate systems and the page on the use of 3d trans
forms.
...you should instead use the standard touch events api, supported since gecko/firefox 6 with multi-touch support added in gecko/firefox 12.using device orientation with 3d trans
formsthis article provides tips on how to use device orientation information in tandem with css 3d trans
forms.
Constraint validation - Developer guides
the creation of web
forms has always been a complex task.
...html5 introduced new mechanisms for
forms: it added new semantic types for the <input> element and constraint validation to ease the work of checking the form content on the client side.
Developer guides
audio and video manipulation the beauty of the web is that you can combine technologies to create new
forms.
...it's primarily intended for sending form data, but can be used independently from
forms to transmit keyed data.
<form> - HTML: Hypertext Markup Language
(browsers tend to ignore this for suspected login
forms; see the autocomplete attribute and login fields.) on: the browser may automatically complete entries.
...it must be unique among the
forms in a document and not an empty string as of html5.
<input type="datetime-local"> - HTML: Hypertext Markup Language
div { margin-bottom: 10px; } input:invalid + span { position: relative; } input:invalid + span:after { content: '✖'; position: absolute; right: -18px; } input:valid + span { position: relative; } input:valid + span:after { content: '✓'; position: absolute; right: -18px; } the best way to deal with dates in
forms in a cross-browser way at the moment is to get the user to enter the day, month, year, and time in separate controls (<select> elements being popular — see below for an implementation), or use javascript libraries such as jquery date picker, and the jquery timepicker plugin.
...after the year 10,000, those numbers will just be a little bit bigger than before, so many servers will not see issues with
forms submitted after the year 10,000.
<input type="reset"> - HTML: Hypertext Markup Language
you should usually avoid including reset buttons in your
forms.
... <input type="reset" value="reset the form"> if you don't specify a value, you get an button with the default label (typically "reset," but this will vary depending on the user agent): <input type="reset"> using reset buttons <input type="reset"> buttons are used to reset
forms.
<input type="search"> - HTML: Hypertext Markup Language
this screenshot is from firefox: at this point, let's look at some useful techniques you can apply to your search
forms.
...look at the following example: <form> <div> <input type="search" id="mysearch" name="q" placeholder="search the site..."> <button>search</button> </div> </form> you can see how the placeholder is rendered below: search form labels and accessibility one problem with search
forms is their accessibility; a common design practice is not to provide a label for the search field (although there might be a magnifying glass icon or similar), as the purpose of a search form is normally fairly obvious for sighted users due to placement (this example shows a typical pattern).
<input type="time"> - HTML: Hypertext Markup Language
in general, otherwise, support is good — especially on mobile plat
forms, which tend to have very nice user interfaces for specifying a time value.
... div { margin-bottom: 10px; position: relative; } input[type="number"] { width: 100px; } input + span { padding-right: 30px; } input:invalid+span:after { position: absolute; content: '✖'; padding-left: 5px; } input:valid+span:after { position: absolute; content: '✓'; padding-left: 5px; } the best way to deal with times in
forms in a cross-browser way, for the time being, is to get the user to enter the hours and minutes (and seconds if required) in separate controls (<select> elements are popular; see below for an example), or use javascript libraries such as the jquery timepicker plugin.
<input type="week"> - HTML: Hypertext Markup Language
mobile plat
forms such as android and ios make really good use of such input types, providing specialist ui controls that make it really easy to select values in a touchscreen environment.
... the best way to deal with week/years in
forms in a cross-browser way at the moment is to get the user to enter the week number and year in separate controls (<select> elements being popular; see below for an example), or use javascript libraries such as jquery date picker.
<nextid>: The NeXT ID element (Obsolete) - HTML: Hypertext Markup Language
html version 2 level 1 this is like the level 2 default but it excludes all the
forms elements, i.
...s, along with such constructs as nesting a header (<h*> element) within a link (<a> element) html version 2 level 2 this is the default and includes and permits all html level 2 functions and elements and attributes html version 2 strict level 2 this excludes these depreciated elements and also forbids such constructs as nesting a header (<h*> element) within a link (<a> element), or having a
forms <input> element which is not within a block level element such as <p> html version 3.2 <nextid> has vanished altogether, never to be heard from again.
HTML: Hypertext Markup Language
html
forms forms are a very important part of the web — these provide much of the functionality you need for interacting with websites, e.g.
...this module gets you started with creating the client-side/front-end parts of
forms.
MIME types (IANA media types) - HTTP
with the exception of multipart/form-data, used in the post method of html
forms, and multipart/byteranges, used with 206 partial content to send part of a document, http doesn't handle multipart documents in a special way: the message is transmitted to the browser (which will likely show a "save as" window if it doesn't know how to display the document).
... each browser per
forms mime sniffing differently and under different circumstances.
HTTP conditional requests - HTTP
by default, unless the etag is prefixed with 'w/', it per
forms a strong validation.
...by default, unless the etag is prefixed with 'w/', it per
forms a strong validation.
Content-Disposition - HTTP
the content-disposition header is defined in the larger context of mime messages for e-mail, but only a subset of the possible parameters apply to http
forms and post requests.
...es use of the content-disposition header: post /test.html http/1.1 host: example.org content-type: multipart/form-data;boundary="boundary" --boundary content-disposition: form-data; name="field1" value1 --boundary content-disposition: form-data; name="field2"; filename="example.txt" value2 --boundary-- specifications specification title rfc 7578 returning values from
forms: multipart/form-data rfc 6266 use of the content-disposition header field in the hypertext transfer protocol (http) rfc 2183 communicating presentation information in internet messages: the content-disposition header field ...
Firefox user agent string reference - HTTP
for other products based on gecko, the string can take one of two
forms, where the tokens have the same meaning except those noted below: mozilla/5.0 (platform; rv:geckoversion) gecko/geckotrail appname/appversion mozilla/5.0 (platform; rv:geckoversion) gecko/geckotrail firefox/firefoxversion appname/appversion appname/appversion indicates the application name and version.
... other gecko-based browsers these are some sample ua strings from other gecko-based browsers on various plat
forms.
HTTP headers - HTTP
content negotiation accept in
forms the server about the types of data that can be sent back.
... accept-language in
forms the server about the human language the server is expected to send back.
TRACE - HTTP
the http trace method per
forms a message loop-back test along the path to the target resource, providing a useful debugging mechanism.
... request has body no successful response has body no safe no idempotent yes cacheable no allowed in html
forms no syntax trace /index.html specifications specification title rfc 7231, section 4.3.8: trace hypertext transfer protocol (http/1.1): semantics and content ...
Equality comparisons and sameness - JavaScript
for any non-primitive objects x and y which have the same structure but are distinct objects themselves, all of the above
forms will evaluate to false.
...after conversions (one or both sides may undergo conversions), the final equality comparison is performed exactly as === per
forms it.
Unicode property escapes - JavaScript
it is possible to use both short or long
forms in unicode property escapes.
...however, such
forms only match characters from the latin script (in other words, a to z and a to z for \w and 0 to 9 for \d).
Functions - JavaScript
each must be a string that con
forms to the rules for a valid javascript identifier or a list of such strings separated with a comma; for example "x", "thevalue", or "a,b".
...that is, the function
forms a closure.
JSON.parse() - JavaScript
// but just to be safe, we want to reject all unexpected
forms.
... if the reviver only trans
forms some values and not others, be certain to return all untransformed values as-is, otherwise, they will be deleted from the resulting object.
Object.fromEntries() - JavaScript
the object.fromentries() method trans
forms a list of key-value pairs into an object.
... object.fromentries() per
forms the reverse of object.entries().
Property accessors - JavaScript
x = eval('document.
forms.form_name.elements.' + strformcontrol + '.value') eval() is slow and should be avoided whenever possible.
...it is better to use bracket notation instead: x = document.
forms['form_name'].elements[strformcontrol].value specifications specification ecmascript (ecma-262)the definition of 'property accessors' in that specification.
Authoring MathML - MathML
cons: this requires to install programs on your computer, which may be a bit more difficult or they may not be available on all plat
forms.
...this command will generate an xhtml+mathml document foo.xml from a foo.tex latex source: mk4ht mzlatex foo.tex # linux/mac plat
forms mzlatex foo.tex # windows platform note that tex4ebook relies on tex4ht to generate epub documents.
Performance fundamentals - Web Performance
use css trans
forms instead of tweaking absolute positioning and fiddling with all that math yourself, use the transform css property to adjust the position, scale, and so forth of your content.
... in addition, trans
forms give you capabilities you might not otherwise have.
Web Performance
mobile performance with web access on mobile devices being so popular, and all mobile plat
forms having fully-fledged web browsers, but possibly limited bandwidth, cpu and battery life, it is important to consider the performance of your web content on these plat
forms.
... mobile performance with web access on mobile devices being so popular, and all mobile plat
forms having fully-fledged web browsers, but possibly limited bandwidth, cpu, and battery life, it is important to consider the performance of your web content on these plat
forms.
Introduction to progressive web apps - Progressive web apps (PWAs)
some of the capabilities have already been enabled on certain web-based plat
forms by proprietary technologies like open graph, which provides a format for specifying similar metadata in the html <head> block using <meta> tags.
... re-engageability one major advantage of native plat
forms is the ease with which users can be re-engaged by updates and new content, even when they aren't looking at the app or using their devices.
The building blocks of responsive design - Progressive web apps (PWAs)
one approach to this is to create different versions of your site/app for different plat
forms or browsers and serve them appropriately after detecting which browser or platform is looking at your site.
...you don't get caught in the situation of having to bring out more new site versions as more new browsers and plat
forms come out, and adjust code as feature support in existing browsers changes.
transform - SVG: Scalable Vector Graphics
example html,body,svg { height:100% } <svg viewbox="-5 -5 10 10" xmlns="http://www.w3.org/2000/svg"> <rect x="-3" y="-3" width="6" height="6" /> <rect x="-3" y="-3" width="6" height="6" fill="red" transform="skewy(30)" /> </svg> specification specification status comment css trans
forms level 2the definition of 'transform' in that specification.
... editor's draft css trans
forms level 1the definition of 'transform' in that specification.
Paths - SVG: Scalable Vector Graphics
l x y (or) l dx dy there are two abbreviated
forms for drawing horizontal and vertical lines.
... z (or) z so our path above could be shortened to: <path d="m 10 10 h 90 v 90 h 10 z" fill="transparent" stroke="black"/> the relative
forms of these commands can also be used to draw the same picture.
Web security
clickjacking protection in clickjacking, a user is fooled into clicking on a ui element that per
forms some action other than what the user expects.
... user information security insecure passwords serving login
forms over http is especially dangerous because of the wide variety of attacks that can be used against them to extract a user’s password.
l10n - Archive of obsolete content
if you're supplying different localizations for a string for singular or plural
forms, this parameter is the number of items there are in this case.
page-mod - Archive of obsolete content
you can specify a url exactly: var pagemod = require("sdk/page-mod"); pagemod.pagemod({ include: "http://www.iana.org/domains/example/", contentscript: 'window.alert("page matches ruleset");' }); you can specify a number of wildcard
forms, for example: var pagemod = require("sdk/page-mod"); pagemod.pagemod({ include: "*.mozilla.org", contentscript: 'window.alert("matched!");' }); you can specify a set of urls using a regular expression.
simple-prefs - Archive of obsolete content
in "package.json": { "type": "control", "label": "click me!", "name": "sayhello", "title": "say hello" } in "main.js": var sp = require("sdk/simple-prefs"); sp.on("sayhello", function() { console.log("hello"); }); localization using the sdk's localization system, you can provide translated
forms of the title and description attributes.
Alerts and Notifications - Archive of obsolete content
this works on windows, linux and (if growl is installed) mac os x: function popup(title, text) { try { components.classes['@mozilla.org/alerts-service;1'] .getservice(components.interfaces.nsialertsservice) .showalertnotification(null, title, text, false, '', null); } catch(e) { // prevents runtime error on plat
forms that don't implement nsialertsservice } } if you need to display a comparable alert on a platform that doesn't support nsialertsservice, you can do this: function popup(title, msg) { var image = null; var win = components.classes['@mozilla.org/embedcomp/window-watcher;1'] .getservice(components.interfaces.nsiwindowwatcher) .openwindow(null, 'ch...
XML-related code snippets - Archive of obsolete content
how to create a dom tree using xmlhttprequest parsing and serializing xml using xpath jxon (lossless javascript xml object notation) xsl trans
forms xlink xinclude xml:id xml:base support in old browsers xpointer svg namespaces, or why http://www.mozilla.org/keymaster/gat...re.is.only.xul is at the top of every xul document.
Code snippets - Archive of obsolete content
window code opening and manipulating windows toolbar toolbar related code sidebar sidebar related code
forms forms related code xml code used to parse, write, manipulate, etc.
Handling Preferences - Archive of obsolete content
to open the preferences window in firefox, select the following from the main menu: on windows, tools > options on mac, firefox > preferences on linux, edit > preferences note: keep in mind the usage of the terms "preferences" and "options" in different plat
forms.
Signing an XPI - Archive of obsolete content
ideally you want a certificate that has a root ca installed in all major plat
forms (microsoft windows, sun java, mozilla/netscape firefox/navigator, opera) so you only use one certificate for signing all your software, no matter which platform it is for.
Firefox addons developer guide - Archive of obsolete content
todo: all fixme notes inside the documents; add abbreviation definition to acronyms; add some link to the internal mdc documentation when it makes sense; indent source code; make sure documentation is relevant for all plat
forms: gnu/linux, macos, windows; add anchor links to figures & listings; add credits to original authors and license; completed sometimes, interfaces names are misspelled: s/nsl/nsi; talk about fuel; titles of chapters and sub-headings should have caps for first letter of each word; we should add a part about bad and good practices (leaks, global scopes, ...); add external resources (mozdev.org...
List of Mozilla-Based Applications - Archive of obsolete content
ware computer, easy and preinstalled” open mashups development tool openoffice.org office suite uses nss openswan implementation of ipsec for linux uses nss orca browser web browser gecko-based version of avant browser pale moon web browser optimized browser developed by moonchild productions for gnu/linux & windows plat
forms, originally forked from firefox palo suite excel extension uses prism partygaming online gaming product uses gecko pencil tool for making diagrams and gui prototyping available as a firefox extension or a standalone app pentaho bi suite commercial open source business intelligence uses xul and mozilla rhino persevere tools fo...
No Proxy For configuration - Archive of obsolete content
nsprotocolproxyservice::prefschanged - loads preferences nsprotocolproxyservice::loadfilters - parses filters nsprotocolproxyservice::examineforproxy - decides to check filters if configuration is "manual" nsprotocolproxyservice::canuseproxy - per
forms url vs.
Automated testing tips and tricks - Archive of obsolete content
todo: check example code in to the tree somewhere how to quit the browser on all plat
forms window.close() of the last open window does not quit the application on mac http://people.mozilla.com/~davel/scripts/ - look at quit.js and quit.xul install manifest file in appdir/chrome to map chrome://tests/content to directory containing quit.js and quit.xul example: content tests file:///users/davel/work/tests/ start app with command line flag -chrome chrome://tests/content/quit.xul how to create a new profile from the command line first, use the -createprofile command line flag to add a profile entry to profiles.ini and populate the new profile directory with a prefs.js file firefox-bin -createprofile "testprofile ${profil...
Bonsai - Archive of obsolete content
checkins to any branch of xfe by ramiro between 26-feb-1998 and 12-may-1998 differences between revisions 3.1 and 3.3 of the file mozilla/cmd/xfe/
forms.c that's a small sample, but it should be enough to get you started.
Drag and Drop JavaScript Wrapper - Archive of obsolete content
var textobserver = { ondrop : function (event, transferdata, session) { event.target.setattribute("value",transferdata.data); } } the flavour system used allows multiple objects of various types to be dragged at once and also allows alternative
forms of the data to be dragged.
Style System Overview - Archive of obsolete content
this style struct is always const, and should always be declared as such (evil old-style casts often used with the non-typesafe
forms sometimes hide this error), since the struct may be shared with other elements.
Code snippets - Archive of obsolete content
let collection = "
forms"; components.utils.import("resource://services-sync/main.js"); components.utils.import("resource://services-sync/record.js"); let recordtype = weave.engines.get(collection)._recordobj; let coll = new collection(weave.service.storageurl + collection, recordtype); coll.full = true; coll.recordhandler = function(item) { item.collection = collection; item.decrypt(); console.log(item.cleartext...
HTTP Class Overview - Archive of obsolete content
tioninfo identifies a connection nshttptransaction implements nsirequest encapsulates a http request and response parses incoming data nshttpchunkeddecoder owned by a transaction strips chunked transfer encoding nshttprequesthead owns a nshttpheaderarray knows how to fill a request buffer nshttpresponsehead owns a nshttpheaderarray knows how to parse response lines per
forms common header manipulations/calculations nshttpheaderarray stores http "<header>:<value>" pairs nshttpauthcache stores authentication credentials for http auth domains nshttpbasicauth implements nsihttpauthenticator generates basic auth credentials from user:pass nshttpdigestauth implements nsihttpauthenticator generates digest auth credentials from user:pass original doc...
LIR - Archive of obsolete content
64 bit subtract quad and branch on overflow softfloat 124 dlo2i integer softfloat get the low 32 bits of a double as an int 125 dhi2i integer softfloat get the high 32 bits of a double as an int 126 ii2d double softfloat join two ints (1st arg is low bits, 2nd is high) 127 hcalli integer lir_hcalli is a hack that's only used on 32-bit plat
forms that use softfloat.
Tamarin Acceptance Testing - Archive of obsolete content
successfully build release and debug versions of the shell with the debugger enabled [info] successfully run the following test suites: acceptance test suite [info] self tests [info] submit a sandbox build request to test against plat
forms that you may not have locally [info] available tamarin acceptance test suites actionscript acceptance tests: actionscript acceptance tests running tamarin acceptance tests abc assembler tests cmdline tests performance tests actionscript performance tests running tamarin performance tests built-in self tests see instructions ...
Tamarin Build System Documentation - Archive of obsolete content
to provide quick and accurate results of building and testing tamarin on supported plat
forms and configurations to represent the build results in a clear and concise manor please give use feedback if you have any comments or suggestions to improve the build system how to add tests to the smokes?
URIs and URLs - Archive of obsolete content
noteable differences necko does not support certain deprecated
forms of relative urls, based on the following part of rfc 2396: if the scheme component is defined, indicating that the reference starts with a scheme name, then the reference is interpreted as an absolute uri and we are done.
XML in Mozilla - Archive of obsolete content
p (no longer supported) w3c recommendation p3p wsdl (no longer supported) w3c note web services xbl mozilla's xbl reference xul mozilla's xul reference roadmap next big tasks would include support for xpointer xpointer() scheme (bug 32832), xinclude (bug 201754), xml catalogs (bug 98413), x
forms (bug 97806; work being done on implementing this as an extension), validating parser (bug 196355) and xml schemas.
Keyboard Shortcuts - Archive of obsolete content
assigning a keyboard shortcut on a menu the second way is: if you are assigning a keyboard shortcut that per
forms a command that also exists on a menu, you can associate the key element directly with the menu command.
Stacks and Decks - Archive of obsolete content
shadowing is very useful for creating the disabled appearance of buttons: example 2 : source view <stack style="background-color: #c0c0c0"> <description value="disabled" style="color: white; padding-left: 1px; padding-top: 1px;"/> <description value="disabled" style="color: grey;"/> </stack> this arrangement of text and shadow colors creates the disabled look under some plat
forms.
XPCOM Interfaces - Archive of obsolete content
after learning this section, you can search suitable interfaces using xulplanet xpcom reference about xpcom mozilla is constructed from a collection of components, each of which per
forms a certain task.
Using Remote XUL - Archive of obsolete content
the categorized links are analogous to menu items organized into menus, where clicking the link/selecting the menu item per
forms some function, so we'll use xul menu elements to implement them in our document.
listbox - Archive of obsolete content
(or, on some plat
forms, typeof(listboxcurrentindex) will be undefined) in a single selection list, the current index will always be the same as the selected index.
resizer - Archive of obsolete content
as some plat
forms provide this resizing grip automatically, this type of resizer element will be hidden and ensure that the window does not get an extra resizer.
richlistbox - Archive of obsolete content
(or, on some plat
forms, typeof(listboxcurrentindex) will be undefined) in a single selection list, the current index will always be the same as the selected index.
treecol - Archive of obsolete content
<treecol label="name" flex="1" /> </treecols> <treechildren> <treeitem> <treerow> <treecell value="true"/> <treecell label="alice"/> </treerow> </treeitem> <treeitem> <treerow> <treecell value="false"/> <treecell label="bob"/> </treerow> </treeitem> </treechildren> </tree> to make the checkbox visible on some plat
forms, the following styles need to be added to the stylesheet (see treecol.type).
2006-10-06 - Archive of obsolete content
announcements firefox 2 release candidate 2 is now available for download beltzner announced ff2 rc2 is availabe for all 3 major plat
forms in some 40 langauges.
NPAPI plugin developer guide - Archive of obsolete content
stom embed attributes plug-in references plug-in development overview writing plug-ins registering plug-ins ms windows unix mac os x drawing a plug-in instance handling memory sending and receiving streams working with urls getting version and ui information displaying messages on the status line making plug-ins scriptable building plug-ins building, plat
forms, and compilers building carbonized plug-ins for mac os x type libraries installing plug-ins native installers xpi plug-ins installations plug-in installation and the windows registry initialization and destruction initialization instance creation instance destruction shutdown initialize and shutdown example drawing and event handling the npwindow structure...
NPP - Archive of obsolete content
the npp_destroy() function in
forms the plug-in when the npp instance is about to be deleted; after this call returns, the npp pointer is no longer valid.
Security - Archive of obsolete content
ssl has been universally accepted on the world wide web for authenticated and encrypted communication between clients and servers.nspr release engineering guidethis paper is for engineers performing formal release for the netscape portable runtime (nspr) across all plat
forms.ssl and tlsthe secure sockets layer (ssl) and transport layer security (tls) protocols are universally accepted standards for authenticated and encrypted communication between clients and servers.
Summary of Changes - Archive of obsolete content
01 div plus scripting non-standard bgsound html 4.01 object proprietary or deprecated feature w3c feature or recommended replacement ie5+ id_attribute_value document.all.id_attribute_value document.all[id_attribute_value] dom level 2: document.getelementbyid(id_attribute_value) ie5+ formname.inputname.value dom level 1: document.
forms["formname"].inputname.value ie5+ inputname.value dom level 1: document.
forms["formname"].inputname.value ie5+ formctrlname dom level 1: document.
forms["formname"].formctrlname ie5+ document.
forms(0) dom level 1: document.
forms[0] ie elemref.innertext dom level 1 (core) interface we could introduce dom 3 core textconte...
New in JavaScript 1.1 - Archive of obsolete content
isnan() now works on every platform (not only unix anymore) parsefloat() and parseint() now return nan on all plat
forms, if the first character of the specified string cannot be converted to a number; in previous releases, it returned nan on solaris and irix and zero on all other plat
forms.
Back to the Server: Server-Side JavaScript On The Rise - Archive of obsolete content
he data server-side if( !validatecomments( name, email, message ) ) { throw "incomplete data was submitted."; } // assemble the string var s = "name: " + name + "<br/>" + "email: " + email + "<br/>" + "message: " + message + "<br/><br/>"; // append the entry to the log file jaxer.file.append( "dump.txt", s ); } formprocessor.proxy = true; </script> the first function, formhandler, per
forms some first-level validation using the validatecomments function.
RFE to the Custom Controls Interfaces - Archive of obsolete content
in short, we have the following interfaces: nsix
formsaccessors - serves to get/set the value of the instance data node that the x
forms element is bound to as well as getting the various states of that node nsix
formsdelegate - used to obtain the nsix
formsaccessors interface nsix
formsuiwidget - used by the x
forms processor to update the value/state of an x
forms element when its bound node's value/state is changed our current mechanism that allows authors to build custom controls assumes that the controls will be bound to instance nodes of simple content type.
XQuery - Archive of obsolete content
the extension now includes and interfaces with the open-source version of saxonica's saxon b (though this extension currently only per
forms the xqueries).
Archive of obsolete content
here at mdn, we try to avoid outright deleting content that might be useful to people targeting legacy plat
forms, operating systems, and browsers.
3D games on the Web - Game development
they can be split into vertex shaders and fragment shaders (or pixel shaders) — the former trans
forms shape positions to real 3d drawing coordinates, while the latter computes rendering colors and other attributes.
MDN Web Docs Glossary: Definitions of Web-related terms
w3c wai wcag web performance web server web standards webassembly webdav webextensions webgl webidl webkit webm webp webrtc websockets webvtt whatwg whitespace world wide web wrapper x x
forms xhr (xmlhttprequest) xhtml xinclude xlink xml xpath xquery xslt other 404 502 alpn at-rule attack byte-order mark character set client cryptosystem debug digital signature execution flex...
What is accessibility? - Learn web development
ention on important content; minimizing distractions, such as unnecessary content or advertisements; consistent webpage layout and navigation; familiar elements, such as underlined links blue when not visited and purple when visited; dividing processes into logical, essential steps with progress indicators; website authentication as easy as possible without compromising security; and making
forms easy to complete, such as with clear error messages and simple error recovery.
Accessibility - Learn web development
mobile accessibility with web access on mobile devices being so popular, and popular plat
forms such as ios and android having fully-fledged accessibility tools, it is important to consider the accessibility of your web content on these plat
forms.
Debugging CSS - Learn web development
how to access browser devtools the article what are browser developer tools is an up-to-date guide explaining how to access the tools in various browsers and plat
forms.
How to build custom form controls - Learn web development
here are a few libraries you should consider before coding your own: jquery ui axe accessible custom select dropdowns msdropdown nice
forms if you do create alternative controls via radio buttons, your own javascript, or with a 3rd party library, ensure it is accessible and feature-proof; that is, it needs to be able to work better with a variety of browsers whose compatibility with the web standards they use vary.
Installing basic software - Learn web development
you should also test how your site per
forms on mobile devices and on any old browsers your target audience may still be using (such as ie 8–10.) lynx, a text-based terminal web browser, is great for seeing how your site is experienced by visually-impaired users.
Web performance - Learn web development
mobile performance with web access on mobile devices being so popular, and all mobile plat
forms having fully-fledged web browsers, but possibly limited bandwidth, cpu and battery life, it is important to consider the performance of your web content on these plat
forms.
Getting started with Vue - Learn web development
babel.config.js: this is the config file for babel, which trans
forms modern javascript features being used in development code into older syntax that is more cross-browser compatible in production code.
Creating a Login Manager storage module
this.stub(arguments); }, getalldisabledhosts: function slms_getalldisabledhosts(count) { this.stub(arguments); }, getloginsavingenabled: function slms_getloginsavingenabled(hostname) { this.stub(arguments); }, setloginsavingenabled: function slms_setloginsavingenabled(hostname, enabled) { this.stub(arguments); }, findlogins: function slms_findlogins(count, hostname,
formsubmiturl, httprealm) { this.stub(arguments); }, countlogins: function slms_countlogins(ahostname, a
formsubmiturl, ahttprealm) { this.stub(arguments); } }; function nsgetmodule(compmgr, filespec) xpcomutils.generatemodule([sampleloginmanagerstorage]); sample c++ implementation bug 309807 contains a complete example.
HTTP logging
here is an example for the windows platform, on other plat
forms we accept the same form of the arguments: if firefox is already running, exit out of it.
Building Firefox with Debug Symbols
use the following mozconfig settings to do a build with symbols: building firefox with symbols there is a single configure option to enable building with symbols on all plat
forms.
Eclipse CDT
files compiled only on other plat
forms) and that therefore have no build output parser data associated with them.
Contributing to the Mozilla code base
now that you've got your first bug fixed you should request level 1 access to the repository to push to the try server and get automated feedback about your changes on multiple plat
forms.
Experimental features in Firefox
nightly 75 yes developer edition 75 no beta 75 no release 75 no preference name dom.
forms.inputmode <link rel="preload"> the <link> element's rel attribute is intended to help provide performance gains by letting you download resources earlier in the page lifecycle, ensuring that they're available earlier and are less likely to block page rendering.
Security best practices for Firefox front-end engineers
we use our built-in sanitizer with the following flags: sanitizerallowstyle sanitizerallowcomments sanitizerdrop
forms sanitizerlogremovals the sanitizer removes all scripts (script tags, event handlers) and form elements (form, input, keygen, option, optgroup, select, button, datalist).
Firefox
firefox is mozilla's popular web browser, available for multiple plat
forms including windows, macos, and linux on the desktop and all android and ios mobile devices.
MozBeforePaint
example this example per
forms a simple animation, moving a box a short distance after a short period of time.
Gecko SDK
mac x86_64 download n/a n/a n/a n/a mac i386 download download download download n/a mac ppc n/a download download download download linux x86_64 download n/a n/a n/a n/a linux i686 download download download download download the sdk is not officially released for other plat
forms; if you need it, you will probably need to build it yourself.
HTML parser threading
normal (non-speculative) parsing initially, dodataavailable per
forms character encoding sniffing on the data if an encoding wasn't declared on the enclosing protocol (http) level.
How to add a build-time test
(example to run the testcookie program) in the test program: if the test fails, exit with a non-zero status and/or print the string "fail" to stdout if the test passes, exit with a zero status and don't print the string "fail" (bonus points for printing "pass" :) ) write the test so that you expect it to pass on all plat
forms, since if the test fails, the tree will go orange (once we've set this up - see bug 352240 for status).
Implementing QueryInterface
in general, i disapprove of macros except in cases where the macro must expand to different text in different situations, e.g., different plat
forms, debugging vs.
Add-on Repository
the api also offers two ways to search for and retrieve an array of addon instances: retrieverecommendedaddons(), which returns a list of recommended add-ons, and searchaddons(), which per
forms a search of the repository.
NetUtil.jsm
methods asynccopy() the asynccopy() method per
forms a simple asynchronous copy of data from a source input stream to a destination output stream.
JavaScript code modules
pluralform.jsm supplies an easy way to get the correct plural
forms for the current locale, as well as ways to localize to a specific plural rule.
Index
42 gettext internationalization, localizability, localization gettext lets you define and use singular and plural
forms of a string.
Localizing with Pontoon
the contents of the <title> tag in websites and strings with placeables or different plural
forms.
Localization formats
o, which many localizers who are familiar with linux and other projects understand mozilla has a basic tool called main.lang checker, which can show any untranslated files to the localizer no need to compile to .mo file so a localizer can see his/her changes more quickly creating simple diffs .lang files will be cached which will reduce any slowness effect disadvantage to .lang no plural
forms no context for localizers unless you provide good comments no styling by localizers if it is needed may be slower because file is not compiled into binaries not used as a standard by any other localization project no tools to validate syntax, so a localizer may cause accidental errors that can cause breakage (level of breakage depends on level of error) cannot use po editor, which most loca...
Updates
june 5, 2002 mozilla 1.0 released "by virtue of embedding gecko, mozilla 1.0 and products based on mozilla code support more web standards, more deeply, more consistently across more plat
forms than any others.
MathML Accessibility in Mozilla
this table below provides a list of mathml constructions and how they are read in mozilla applications for various plat
forms: windows: mathml support is provided by nvda, which actually delegates math reading to the proprietary mathplayer plugin.
Mozilla Development Tools
it is our home-grown web-based tool for watching the progress of the continuous builds that we run on multiple plat
forms.
Are We Slim Yet
this allowed us to run measurements on all branches and plat
forms.
Build Metrics
lower is better here, especially on space-restricted plat
forms like android.
BloatView
ass,myotherclass,deliberatelyleakedclass mach mochitest [options] test harness scripts typically accept a --setenv option for specifying environment variables, which may be more convenient in some cases: mach mochitest --setenv=xpcom_mem_log_classes=myclass [options] for getting allocation stacks in automation, you can add the appropriate --setenv options to the test configurations for the plat
forms you're interested in.
JS::PerfMeasurement
we also can't guarantee that all plat
forms will support all event types, once we have more than one back end for this interface.
TraceMalloc
this example is for macos; small modifications are needed for other plat
forms.
Phishing: a short definition
in 2014, the msci estimated an annual global impact of phishing, and various
forms of identity theft, to be as high as $5 billion usd.
Localization Use Cases
orage, function(freespace) { devicestoragehelper.showformatedsize(self.appstoragedesc, 'availablesize', freespace); }); }, problem definition for all values of freespace, the following string is enough to construct a grammatically-correct sentence in english: availablesize = {{$size}} {{$unit}} available however, other languages might need to pluralize this string with different
forms of the available adjective.
Dynamic Library Linking
platform notes to use the dynamic library loading functions on some plat
forms, certain environment variables must be set at run time, and you may need to link your executable programs using special linker options.
IPC Semaphores
nspr provides an interprocess communication mechanism using a counting semaphore model similar to that which is provided in unix and windows plat
forms.
Long Long (64-bit) Integers
64-bit integer types nspr provides two types to represent 64-bit integers: print64 pruint64 64-bit integer functions the api defined for the 64-bit integer functions is consistent across all supported plat
forms.
PRHostEnt
note winsock.h defines h_addrtype and h_length as a 16-bit field, whereas other plat
forms treat it as a 32-bit field.
PRInt16
guaranteed to be a signed 16-bit integer on all plat
forms.
PRInt32
guaranteed to be a signed 32-bit integer on all plat
forms.
PR_htonl
per
forms 32-bit conversion from host byte order to network byte order.
PR_htons
per
forms 16-bit conversion from host byte order to network byte order.
PR_ntohl
per
forms 32-bit conversion from network byte order to host byte order.
PR_ntohs
per
forms 16-bit conversion from network byte order to host byte order.
Process Initialization
identity and versioning initialization and cleanup module initialization identity and versioning name and version constants pr_name pr_version pr_versioncheck initialization and cleanup nspr detects whether the library has been initialized and per
forms implicit initialization if it hasn't.
Building NSS
because nss is a cross-platform library that builds on many different plat
forms and has many options, it may be complex to build.
FIPS Mode - an explanation
one device does all the operations that may be done without needing to authenticate, and the other device stores the user's certificates and private keys and per
forms operations that use those private keys.
NSS 3.12.9 release notes
ebl bug 607058: crash [@ nss_cms_decoder_work_data] bug 613394: november/december 2010 batch of nss root ca changes bug 610843: need way to recover softoken in child after fork() bug 617492: add pk11_keygenwithtemplate function to pk11wrap (for firefox sync) bug 610162: sha-512 and sha-384 hashes are incorrect for inputs of 512mb or larger when running under windows and other 32-bit plat
forms (fx 3.6.12 and 4.0b6) bug 518551: vfychain crashes in pkits tests.
NSS_3.12_release_notes.html
pointed by certvaloutparam array in case of error bug 426450: pkix_pl_hashtable_remove leaks hashtable key object bug 429230: memory leak in pkix_checkcert function bug 392696: fix copyright boilerplate in all new pkix code bug 300928: integrate libpkix to nss bug 303457: extensions newly supported in libpkix must be marked supported bug 331096: nss softoken must detect forks on all unix-ish plat
forms bug 390710: certnameconstraintstemplate is incorrect bug 416928: der decode error on this policy extension bug 375019: cache-enable pkix_ocspchecker_check bug 391454: libpkix does not honor nss's override trust flags bug 403682: cert_pkixverifycert never succeeds bug 324744: add generation of policy extensions to certutil bug 390973: add long option names to secu_parsecommandline bug 161326: need...
NSS 3.30 release notes
new functions in cert.h cert_compareava - per
forms a comparison of two certava structures, and returns a seccomparison result.
NSS 3.36.6 release notes
this is a patch release to fix cve-2018-12404 bugs fixed in nss 3.36.6 bug 1485864 - cache side-channel variant of the bleichenbacher attack (cve-2018-12404) bug 1389967 and bug 1448748 - fixes for mingw on x64 plat
forms.
NSS 3.55 release notes
known issues on some plat
forms, using the makefile builds fails to locate seccomon.h; ensure you are using make all rather than just make.
PKCS11 FAQ
yes, the token is call softokn3 (softokn3.dll on windows, libsoftokn3.so on most unix plat
forms).
Installation guide
nspr: libnspr4.so libplds4.so libplc4.so nss: (note the use of * for libfreebl -- some plat
forms have multiple ones) libfreebl*3.so libfreebl*3.chk libsoftokn3.so libsoftokn3.chk libnss3.so libsmime3.so libssl3.so libnssckbi.so ...
FC_Initialize
in addition to creating the internal data structures, it per
forms the fips software integrity test and power-up self-tests.
NSS tools : cmsutil
name cmsutil — per
forms basic cryptograpic operations, such as encryption and decryption, on cryptographic message syntax (cms) messages.
gtstd.html
netscape provides three built-in modules with nss and with server and client products: the default netscape internal pkcs #11 module comes with two built-in tokens: the generic crypto services token per
forms all cryptographic operations, such as encryption, decryption, and hashing.
sslintro.html
sets up configuration files and per
forms other tasks required to run network security services.
NSS Tools
source, documentation, tasks/plans cmsutil 1.0 per
forms basic cms operations such as encrypting, decrypting, and signing messages.
modutil-tasks.html
a fix was made for "hpux b.11.00," but issues may still arise for plat
forms like "linux 2.2.12-20." documentation needs to be explicit about the use of fo ...
NSS Tools certutil
availability see the release notes for the plat
forms this tool is available on.
NSS Tools crlutil
availability see the release notes for the plat
forms this tool is available on.
NSS Tools modutil-tasks
a fix was made for "hpux b.11.00," but issues may still arise for plat
forms like "linux 2.2.12-20." documentation needs to be explicit about the use of fo ...
NSS Tools pk12util
availability see the release notes for the plat
forms this tool is available on.
NSS tools : cmsutil
name cmsutil — per
forms basic cryptograpic operations, such as encryption and decryption, on cryptographic message syntax (cms) messages.
Network Security Services
get the source code and build it instructions on how to build nss on the different supported plat
forms.
The Necko HTTP module
http logging this document describes how to enable http logging for various plat
forms.
Rhino license
* * redistribution and use in source and binary
forms, with or without * modification, are permitted provided that the following conditions * are met: * * - redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer.
Rhino optimization
another benefit of the interpreted mode is that the interpreter per
forms tail-call elimination of recursive functions.
Rhino overview
string.prototype.split for version 1.2 only, split per
forms the perl4 special case when given a single space character as an argument (skips leading whitespace, and splits on whitespace).
Performance Hints
arrays use the
forms of the array constructor that specify a size or take a list of initial elements.
The JavaScript Runtime
instead, every property accessor method in scriptable (has, get, set, remove, getattributes, and setattributes) has overloaded
forms that take either a string or an int argument.
Scripting Java
if we just view the method object by itself we can see the various overloaded
forms of the method: js> f.listfiles function listfiles() {/* java.io.file[] listfiles() java.io.file[] listfiles(java.io.filenamefilter) java.io.file[] listfiles(java.io.filefilter) */} this output shows that the file class defines three overloaded methods listfiles: one that takes no arguments, another with a filenamefilter argument, and a third with a filefilter argument.
FOSS
wrappers / bindings c++ cocos2d-js - cocos2d-js is a cross-platform game engine which embeds spidermonkey, providing the same api for both web and native plat
forms.
Getting SpiderMonkey source code
wing urls: http://ftp.mozilla.org/pub/spidermonkey/releases/ http://ftp.mozilla.org/pub/spidermonkey/prereleases/ here is a command-line example of downloading and unzipping spidermonkey source code version 59.0: mkdir mozilla cd mozilla wget http://ftp.mozilla.org/pub/spidermonkey/prereleases/59/pre1/mozjs-59.0a1.0.tar.bz2 tar xvf mozjs-59.0a1.0.tar.bz2 these commands should work on most plat
forms including windows, as long as on windows you are using the mozillabuild bash shell.
Garbage collection
an arena is one page (4096 bytes on almost all plat
forms) and contains an arenaheader, a few pad bytes, and then an array of aligned elements.
Property cache
if there is a cache miss, the jit per
forms parts 1 and 2 of the property access and fills the cache to avoid redoing that work in the interpreter.
JSVAL_IS_GCTHING
javascript per
forms automatic garbage collection of objects, strings, and doubles.
JS_DestroyContext
js_destroycontext additionally per
forms garbage collection to reclaim any memory that was being used by cx's global object.
JS_MaybeGC
if so, it per
forms some garbage collection.
JS_THREADSAFE
requests in a js_threadsafe build, the application must separate code that uses the jsapi from code that per
forms blocking i/o or time-consuming calculations.
jsdouble
implementation note: spidermonkey has had several bugs involving details of floating-point arithmetic on various plat
forms.
Profiling SpiderMonkey
when we have js scriptable profiling options available for all tier 1 plat
forms, we'll look at adding global start/stop profiling functions.
SpiderMonkey 1.8
the new behavior con
forms to the ecmascript standard, ecma 262-3 §11.13.1.
TPS Tests
per
forms the specified actions in sequence.
Zest implementation
the first version is aimed at creating scripts for reproducing basic security vulnerabilities includes a java reference implementation, which con
forms to jsr 223 has been included in a proof-of-concept owasp zap add-on the next version is underdevelopment - more details soon.
Handling Mozilla Security Bugs
background security vulnerabilities are different from other bugs, because their consequences are potentially so severe: users' private information (including financial information) could be exposed, users' data could be destroyed, and users' systems could be used as plat
forms for attacks on other systems.
Gecko object attributes
applied to: any widget that accepts input exposed via aria: aria-datatype exposed in x
forms: from boud instance node datatype draggable true when the accessible object can be grabbed.
Gecko Roles
role_menubar represents the menu bar (positioned beneath the title bar of a window on most plat
forms or at the top of the screen on mac os x) from which menus are selected by the user.
AT Development
x
forms references - gecko documentation showing how x
forms controls are mapped to at apis.
XML Extras
the xml extras module is built by default on all plat
forms, and is included in the browser installers so it is available in the nightly builds.
Generating GUIDs
online tools generate guid online uuid (guid) generator on the web uuid generator for mozilla code (both idl and c++.h
forms) you can get a guid from one of the bots (such as botbot, firebot) on #firefox irc channel by /msging "uuid" to them.
Mozilla internal string guide
nowadays, all supported plat
forms have 16-bit literals using u""_ns, so we longer need to rely on macros for portability.
mozIStorageAsyncStatement
in contrast, mozistoragestatement may need to acquire the primitives and consequently can cause the main thread to lock for extended intervals while the asynchronous thread per
forms some long-running operation.
DoAction
« nsiaccessible page summary this method per
forms the accessible action at the given zero-based index.
nsIAccessible
doaction this method per
forms the accessible action at the given zero-based index.
nsIApplicationUpdateService
this information is most commonly used to update a user interface that in
forms the user as to the status of an update.
nsIAuthPromptWrapper
the nsiauthpromptwrapper interface is an override of nsiauthprompt which per
forms some action on the data going through nsiauthprompt methods.
nsIBinaryInputStream
this might be used, for example, to implement network protocols or to read from architecture-neutral disk files, that is ones that can be read and written by both big-endian and little-endian plat
forms.
nsIBinaryOutputStream
this might be used, for example, to implement network protocols or to produce architecture-neutral binary disk files, that is ones that can be read and written by both big-endian and little-endian plat
forms.
nsIClipboard
forcedatatoclipboard() obsolete since gecko 1.8 (firefox 1.5 / thunderbird 1.5 / seamonkey 1.0) some plat
forms support deferred notification for putting data on the clipboard this method forces the data onto the clipboard in its various formats this may be used if the application going away.
nsICollection
queryelementat() per
forms a queryinterface on the item at the specified index into the collection.
nsICommandLine
preventdefault boolean there may be a command-line handler which per
forms a default action if there was no explicit action on the command line (open a default browser window, for example).
nsIDebug
assertion() shows an assertion and triggers optional behavior based on the xpcom_debug_break environment variable, defaulting to calling break() on windows and os/2 and warning on other plat
forms.
getFile
available on all plat
forms these symbolic names are available on all plat
forms (although, of course, they may refer to different physical paths on the storage device).
nsIFilePicker
on some plat
forms, this is automatically appended to filenames the user enters, if required.
nsIIDNService
normalize() per
forms the unicode normalization needed for hostnames in idn.
nsIInputStream
in addition to the number of bytes available in the stream, this method also in
forms the caller of the current status of the stream.
nsILoginManager
note: this method will attempt to fill out the form regardless of the setting of the signon.autofill
forms preference.
nsIMemoryReporterManager
this reporter is special-cased because it is interesting, is available on all plat
forms, and returns a meaningful result on all common plat
forms.
nsIMimeConverter
thunderbird provides a utility function which per
forms this for the currently selected message: markcurrentmessageasread().
nsIMsgDBHdr
thunderbird provides a utility function which per
forms this for the currently selected message: markcurrentmessageasread().
nsIProcess
this value is only available after the process has started; in addition, some plat
forms may not offer this value at all.
nsIScreen
this will only have an effect on plat
forms that support screen rotation.
nsIXPConnect
per
forms an operation over all of |object|'s xows such as clearing their scopes or updating their concept of the current principal.
nsIXULRuntime
it may not be available on all plat
forms, especially unusual processor or compiler combinations.
nsIXULWindow
on some plat
forms, windows with a higher zlevel will be kept above windows with a lower zlevel.
XPCOM Interface Reference
progresslistener2nsiwebsocketchannelnsiwebsocketlistenernsiwebappssupportnsiwifiaccesspointnsiwifilistenernsiwifimonitornsiwinaccessnodensiwinapphelpernsiwintaskbarnsiwindowcreatornsiwindowmediatornsiwindowwatchernsiwindowsregkeynsiwindowsshellservicensiworkernsiworkerfactorynsiworkerglobalscopensiworkermessageeventnsiworkermessageportnsiworkerscopensiwritablepropertybagnsiwritablepropertybag2nsix
formsmodelelementnsix
formsnsinstanceelementnsix
formsnsmodelelementnsixmlhttprequestnsixmlhttprequesteventtargetnsixmlhttprequestuploadnsixpcexceptionnsixpcscriptablensixpconnectnsixsltexceptionnsixsltprocessornsixsltprocessorobsoletensixulappinfonsixulbrowserwindownsixulbuilderlistenernsixulruntimensixulsortservicensixultemplatebuildernsixultemplatequeryprocessornsixultemplateresultnsixulwindownsixmlrp...
XPCOM Interface Reference by grouping
n nsixsltprocessor download nsidownload nsidownloadmanager nsidownloadprogresslistener element internal nsiworker nsiworkerglobalscope nsiworkermessageevent nsiworkermessageport nsiworkerscope tree nsitreeboxobject nsitreecolumn nsitreecolumns nsitreecontentview nsitreeselection nsitreeview xform nsix
formsmodelelement nsix
formsnsinstanceelement nsix
formsnsmodelelement xmlhttprequest nsixmlhttprequesteventtarget favicon nsifavicondatacallback nsifaviconservice frame nsichromeframemessagemanager nsiframeloader nsiframeloaderowner nsiframemessagelistener nsiframemessagemanager interface nsijsxmlhttprequest jetpack ...
nsIAbCard/Thunderbird3
these functions are marked <code>[noscript] since xpcconnect per
forms automatic type conversion on nsivariant such that they are not needed for scripts, only for c++ callers.
Performance
as of april 10, 2006, mozilla uses sqlite 3.3.4, but the latest precompiled version of the command line tools is not available for all plat
forms.
Storage
sqlite syntax query language understood by sqlite sqlite database browser is a capable free tool available for many plat
forms.
Using nsIDirectoryService
on plat
forms which use path environment variables, you will need to set one of these paths to the /bin directory.
Using the clipboard
next, we need to get the data from the clipboard: services.clipboard.getdata(trans, services.clipboard.kglobalclipboard); var str = {}; var strlength = {}; trans.gettransferdata("text/unicode", str, strlength); the first line per
forms the opposite of setdata.
XPCOM tasks
and if so, can we narrow it to only those plat
forms that need it?
Xptcall Porting Status
he is hoping that others will help test the changes using these two compilers on the various plat
forms where this same code is used.
XPCOM
while xpcom components written in a scripting language (such as javascript) can be moved across plat
forms (such as windows and os x) without adaptation, those written in a compiled language (such as c++) require recompilation when moving to a different platform.
XTF
for example, the mozilla x
forms project uses xtf to add support for the x
forms namespace.
XUL Overlays
the layout engine loads any overlay files and then flows the resulting xul document, so problems associated with incremental insertion in menus, boxes, tables, and
forms are avoided.
Demo Addon
it lets you iterate over any collection and trans
forms your collection elements in the given objects, to use fixiterator, you have to import it with cu.import("resource:///modules/iteratorutils.jsm");.
Using tab-modal prompts
an alert!"]; prompt.alert.apply(null, promptargs); nsiprompt will automatically fall back to window-modal prompts when necessary (such as in situations in which tab-modal prompts aren't supported, or for prompts displayed outside the context of a tab).le to use other
forms of the prompts of nsipromptservice interface see the example code.
WebIDL bindings
for example: interface myinterface { [alias=per
formsomething] void dosomething(); }; myinterface.prototype.per
formsomething will have the same function object value as myinterface.prototype.dosomething.
Standard OS Libraries
// placeholder - example soon to come x11 x11 runs primarily on unix® and unix-like operating systems like linux, all of the bsd variants, sun solaris both native 32 and 64 bit support, solaris x86, mac os x (via darwin) as well as other plat
forms like os/2 and cygwin.
Working with data
creating uninitialized cdata objects there are three
forms of the syntax for creating cdata objects without immediately assigning them a value: var mycdataobj = new type; var mycdataobj = new type(); var mycdataobj = type(); these all do the same thing: they return a new cdata object of the specified type, whose data buffer has been populated entirely with zeroes.
js-ctypes reference
other features error-handling js-ctypes supports both errno (on all plat
forms) and getlasterror (on windows plat
forms).
Memory - Plugins
for communicator 4.0 and later versions, this function is not necessary for the mac os platform; npn_memalloc now per
forms memory flushing internally.
Streams - Plugins
sending a stream when a plug-in sends a data stream to the browser, it per
forms several tasks.
Version, UI, and Status Information - Plugins
*/ return false; } else /* plug-in is running in a navigator version */ /* that has windowless support */ return true; } detecting windowless support on other plat
forms browser implementations on other plat
forms did not have windowless plug-in support at the time it was added to ms windows and mac os x, so a different method must be used to detect whether the browser provides support.
Gecko Plugin API Reference - Plugins
stom embed attributes plug-in references plug-in development overview writing plug-ins registering plug-ins ms windows unix mac os x drawing a plug-in instance handling memory sending and receiving streams working with urls getting version and ui information displaying messages on the status line making plug-ins scriptable building plug-ins building, plat
forms, and compilers building carbonized plug-ins for mac os x type libraries installing plug-ins native installers xpi plug-ins installations plug-in installation and the windows registry initialization and destruction initialization instance creation instance destruction shutdown initialize and shutdown example drawing and event handling the npwindow structure...
Introduction to DOM Inspector - Firefox Developer Tools
(note that there are bugs which prevent the flasher from dom inspector apis from working correctly on certain plat
forms.) if you inspect the main browser window, for example, and select nodes in the dom nodes viewer (other than the elements which have no visible ui as is the case with the endless list of script elements that are loaded into browser.xul), you will see the various parts of the browser interface being highlighted with a blinking red border.
Examine and edit CSS - Firefox Developer Tools
typing in the search box per
forms a live filtering of the list, so, for example, if you just want to see font-related settings, you can type "font" in the search box, and only properties with "font" in the name will be listed.
How to - Firefox Developer Tools
scss grid inspector: examine grid layoutsedit css filtersedit shape paths in cssedit fontsexamine event listenersexamine and edit cssexamine and edit htmlexamine and edit the box modelinspect and select colorsopen the inspectorreposition elements in the pageselect an elementselect and highlight elementsuse the inspector apiuse the inspector from the web consoleview background imagesvisualize trans
formswork with animations ...
Page Inspector - Firefox Developer Tools
how to to find out what you can do with the inspector, see the following how to guides: open the inspector examine and edit html examine and edit the box model inspect and select colors reposition elements in the page edit fonts visualize trans
forms use the inspector api select an element examine and edit css examine event listeners work with animations edit css filters edit css shapes view background images use the inspector from the web console examine css grid layouts examine css flexbox layouts reference keyboard shortcuts settings ...
AbstractRange - Web APIs
there are two such interfaces: range the range interface has been around for a long time and has only recently been redefined to be based upon abstractrange as the need arose to define other
forms of range data.
Background Tasks API - Web APIs
the callback is passed an object which con
forms to idledeadline, with didtimeout set to false and a timeremaining() method which is implemented to give the callback 50 milliseconds of time to begin with.
Blob.stream() - Web APIs
call the returned stream's pipethrough() method to pipe the stream through a trans
formstream or any other readable and writable pair.
Blob.text() - Web APIs
usage notes the filereader method readastext() is an older method that per
forms a similar function.
Applying styles and colors - Web APIs
note that the maximum miter length is the product of the line width measured in the current coordinate system, by the value of this miterlimit property (whose default value is 10.0 in the html <canvas>), so the miterlimit can be set independently from the current display scale or any affine trans
forms of paths: it only influences the effectively rendered shape of line edges.
Transformations - Web APIs
ctx.save(); ctx.scale(10, 3); ctx.fillrect(1, 10, 10, 10); ctx.restore(); // mirror horizontally ctx.scale(-1, 1); ctx.font = '48px serif'; ctx.filltext('mdn', -135, 120); } <canvas id="canvas" width="150" height="150"></canvas> draw(); screenshotlive sample trans
forms finally, the following transformation methods allow modifications directly to the transformation matrix.
ConvolverNode - Web APIs
the convolvernode interface is an audionode that per
forms a linear convolution on a given audiobuffer, often used to achieve a reverb effect.
DOMMatrixReadOnly - Web APIs
dommatrixreadonly.transformpoint() trans
forms the specified point using the matrix, returning a new dompoint object containing the transformed point.
DOMPoint.x - Web APIs
in general, positive values x mean to the right, and negative values of x means to the left, barring any trans
forms that may have altered the orientation of the axes.
DOMPoint.y - Web APIs
unless trans
forms have been applied to alter the orientation, the value of y increases downward and decreases upward.
DOMPoint.z - Web APIs
unless trans
forms have changed the orientation, a z of 0 is the plane of the screen, with positive values extending outward toward the user from the screen, and negative values receding into the distance behind the screen.
DOMPointInit.x - Web APIs
in general, positive values x mean to the right, and negative values of x means to the left, assuming that trans
forms have not altered the orientation of the axes.
DOMPointInit - Web APIs
this is the vertical coordinate, and barring any trans
forms applied to the coordinate system, positive values are downward and negative values upward toward the top of the screen.
DOMPointReadOnly.x - Web APIs
in general, positive values x mean to the right, and negative values of x means to the left, assuming no trans
forms have resulted in a reversal.
DOMPointReadOnly.y - Web APIs
in general, positive values of y mean downward, and negative values of y mean upward, assuming no trans
forms have resulted in a reversal.
DOMPointReadOnly.z - Web APIs
in general, positive values of z mean toward the user (out from the screen), and negative values of z mean away from the user (into the screen), assuming no trans
forms have resulted in a reversal.
DOMQuad - Web APIs
returning domquads lets getboxquads() return accurate information even when arbitrary 2d or 3d trans
forms are present.
Document - Web APIs
document.
formsread only returns a list of the <form> elements within the current document.
Element: click event - Web APIs
this counter resets after a short interval without any clicks occurring; the specifics of how long that interval is may vary from browser to browser and across plat
forms.
Element.name - Web APIs
syntax htmlelement.name = string let elname = htmlelement.name let fcontrol = htmlformelement.elementname let controlcollection = htmlformelement.elements.elementname example <form action="" name="forma"> <input type="text" value="foo"> </form> <script type="text/javascript"> // get a reference to the first element in the form let formelement = document.
forms['forma'].elements[0] // give it a name formelement.name = 'inputa' // show the value of the input alert(document.
forms['forma'].elements['inputa'].value) </script> notes in internet explorer (ie), the name property of dom objects created using document.createelement() can't be set or modified.
HTMLCollection - Web APIs
for example, assuming there is one <form> element in the document and its id is myform: var elem1, elem2; // document.
forms is an htmlcollection elem1 = document.
forms[0]; elem2 = document.
forms.item(0); alert(elem1 === elem2); // shows: "true" elem1 = document.
forms.myform; elem2 = document.
forms.nameditem("myform"); alert(elem1 === elem2); // shows: "true" elem1 = document.
forms["named.item.with.periods"]; specifications specification status comment domthe definition of 'htmlcollec...
HTMLFormControlsCollection.namedItem() - Web APIs
example html <form> <input id="my-form-control" type="textarea"> </form> javascript // returns the htmlinputelement representing #my-form-control elem1 = document.
forms[0]['my-form-control']; specifications specification status comment html living standardthe definition of 'htmlformcontrolscollection.nameditem()' in that specification.
HTMLFormElement.acceptCharset - Web APIs
syntax var string = form.acceptcharset; form.acceptcharset = string; example inputs = document.
forms['myform'].acceptcharset; specifications specification status comment html living standardthe definition of 'htmlformelement: acceptcharset' in that specification.
HTMLFormElement.length - Web APIs
s included by htmlformelement.elements and htmlformelement.length are the following: <button> <fieldset> <input> (with the exception that any whose type is "image" are omitted for historical reasons) <object> <output> <select> <textarea> no other elements are included in the list returned by elements, which makes it an excellent way to get at the elements most important when processing
forms.
HTMLFormElement.method - Web APIs
syntax var string = form.method; form.method = string; example document.
forms['myform'].method = 'post'; const formelement = document.createelement("form"); // create a form document.body.appendchild(formelement); console.log(formelement.method); // 'get' specifications specification status comment html living standardthe definition of 'htmlformelement: method' in that specification.
HTMLFormElement.reportValidity() - Web APIs
syntax htmlformelement.reportvalidity() return value boolean example document.
forms['myform'].addeventlistener('submit', function() { document.
forms['myform'].reportvalidity(); }, false); specifications specification status comment html living standardthe definition of 'htmlformelement.reportvalidity()' in that specification.
HTMLFormElement.submit() - Web APIs
syntax htmlformelement.submit() example document.
forms["myform"].submit(); specifications specification status comment html living standardthe definition of 'htmlformelement: submit' in that specification.
HTMLImageElement.complete - Web APIs
but imagine that you have other code that needs to only run when the image has completed loading, such as a command that per
forms red-eye removal on the image in the lightbox.
HTMLImageElement.srcset - Web APIs
otherwise, the condition descriptor may take one of two
forms: to indicate that the image resource specified by the image candidate string should be used when the image is being rendered with a particular width in pixels, provide a width descriptor comprised the number giving that width in pixels followed by the lower case letter "w".
HTMLSelectElement.item() - Web APIs
examples html <form> <select id="myformcontrol" type="textarea"> <option id="o1">opt 1</option> <option id="o2">opt 2</option> </select> </form> javascript // returns the htmloptionelement representing #o2 elem1 = document.
forms[0]['myformcontrol'][1]; specifications specification status comment html living standardthe definition of 'htmlselectelement.item()' in that specification.
HTMLSelectElement.namedItem() - Web APIs
example html <form> <select id="myformcontrol"> <option id="o1">opt 1</option> <option id="o2">opt 2</option> </select> </form> javascript elem1 = document.
forms[0]['myformcontrol']['o1']; // returns the htmloptionelement representing #o1 specifications specification status comment html living standardthe definition of 'htmlselectelement.nameditem()' in that specification.
The HTML DOM API - Web APIs
barprop navigator window deprecated web app and browser integration interfaces external obsolete web app and browser integration interfaces applicationcache plugin pluginarray form support interfaces these interfaces provide structure and functionality required by the elements used to create and manage
forms, including the <form> and <input> elements.
Drag Operations - Web APIs
by providing data in other types as well, we can also support drags to other applications in less specific
forms.
Ajax navigation example - Web APIs
to see how it works, please create the following files (or git clone https://github.com/giabao/mdn-ajax-nav-example.git ): note: for fully integrating the <form> elements within this mechanism, please take a look at the paragraph submitting
forms and uploading files.
installChrome - Web APIs
the method per
forms a simplified installation of language packs or netscape 6/mozilla skins, and saves you the trouble of writing separate installation scripts in the xpi files or using the more sophisticated methods of the install and file objects.
Web-based protocol handlers - Web APIs
the browser extracts the href from the activated link, combines it with the url template supplied during handler registration and per
forms an http get on the url.
NavigatorID.appVersion - Web APIs
example alert('your browser version is reported as ' + navigator.appversion); notes the window.navigator.useragent property may also contain the version number (for example "mozilla/5.0 (windows; u; win98; en-us; rv:0.9.2) gecko/20010725 netscape 6/6.1"), but you should be aware of how easy it is to change the user agent string and "spoof" other browsers, plat
forms, or user agents, and also how cavalier the browser vendor themselves are with these properties.
Node - Web APIs
div> element named "box": <div id="box"> <span>foo</span> <span>bar</span> <span>baz</span> </div> const box = document.getelementbyid("box") eachnode(box, function(node) { if (null != node.textcontent) { console.log(node.textcontent) } }) the above will result in the following strings printing to the user's console: "\n\t", "foo", "\n\t", "bar", "\n\t", "baz" note: whitespace
forms part of a text node, meaning indentation and newlines form separate text between the element nodes.
Notification - Web APIs
these notifications' appearance and specific functionality vary across plat
forms but generally they provide a way to asynchronously provide information to the user.
NotificationAction - Web APIs
these buttons' appearance and specific functionality vary across plat
forms but generally they provide a way to asynchronously show actions to the user in a notification.
OscillatorNode.setPeriodicWave() - Web APIs
here, with createperiodicwave(), you specify the frequencies, and the browser per
forms a an inverse fourier transform to get a time domain buffer for the frequency of the oscillator.
OscillatorNode - Web APIs
methods inherits methods from its parent, audioscheduledsourcenode, and adds the following: oscillatornode.setperiodicwave() sets a periodicwave which describes a periodic waveform to be used instead of one of the standard wave
forms; calling this sets the type to custom.
PannerNode.refDistance - Web APIs
/ this tone should decay immediately and fairly quickly scheduletesttone(1, context.currenttime); // this tone should decay slower and later than the previous one scheduletesttone(4, context.currenttime + note_length); // this tone should decay only slightly, and only start decaying fairly late scheduletesttone(7, context.currenttime + note_length * 2); after running this code, the resulting wave
forms should look something like this: specifications specification status comment web audio apithe definition of 'refdistance' in that specification.
PannerNode.rolloffFactor - Web APIs
tart(starttime); osc.stop(starttime + note_length); }; // this tone should decay fairly quickly scheduletesttone(1, context.currenttime); // this tone should decay slower than the previous one scheduletesttone(0.5, context.currenttime + note_length); // this tone should decay only slightly scheduletesttone(0.1, context.currenttime + note_length * 2); after running this code, the resulting wave
forms should look something like this: specifications specification status comment web audio apithe definition of 'rollofffactor' in that specification.
PeriodicWave - Web APIs
here, with createperiodicwave(), you specify the frequencies, and the browser per
forms an inverse fourier transform to get a time domain buffer for the frequency of the oscillator.
Pointer events - Web APIs
additionally, a pointer event contains the usual properties present in mouse events (client coordinates, target element, button states, etc.) in addition to new properties for other
forms of input: pressure, contact geometry, tilt, etc.
PromiseRejectionEvent.promise - Web APIs
window.onunhandledrejection = function(event) { if (event.reason.code && event.reason.code == "module not ready") { window.requestidlecallback(function(deadline) { loadmodule(event.reason.modulename) .then(per
formstartup); }); event.preventdefault(); } } specifications specification status comment html living standardthe definition of 'promiserejectionevent.promise' in that specification.
RTCIceCandidatePairStats - Web APIs
any candidate pair that isn't the active pair of candidates for a transport gets deleted if the rtcicetransport per
forms an ice restart, at which point the state of the ice transport returns to new and negotiation starts once again.
RTCRtpCapabilities - Web APIs
there may be multiple entries for red if different
forms are supported; each will have a unique media type in that case.
RTCSessionDescription() - Web APIs
syntax sessiondescription = new rtcsessiondescription(rtcsessiondescriptioninit); values rtcsessiondescriptioninit optional an object providing the default values for the session description; the object con
forms to the rtcsessiondescriptioninit dictionary.
RTCSessionDescriptionCallback - Web APIs
because this function type is part of the legacy webrtc api, you should avoid using it (and the callback-based
forms of createoffer() and createanswer() that make use of it).
RadioNodeList.value - Web APIs
syntax value = radionodelist.value; radionodelist.value = string; example html <form> <label><input type="radio" name="color" value="blue">blue</label> <label><input type="radio" name="color" value="red">red</label> </form> javascript // get the form const form = document.
forms[0]; // get the form's radio buttons const radios = form.elements['color']; // choose the "red" option radios.value = 'red'; result specifications specification status comments html living standardthe definition of 'radionodelist.value' in that specification.
ReadableStream.pipeTo() - Web APIs
examples // fetch the original image fetch('png-logo.png') // retrieve its body as readablestream .then(response => response.body) .then(body => body.pipethrough(new pngtrans
formstream())) .then(rs => rs.pipeto(new finaldestinationstream())) specifications specification status comment streamsthe definition of 'pipeto()' in that specification.
Using Service Workers - Web APIs
scope is ' + reg.scope); }).catch((error) => { // registration failed console.log('registration failed with ' + error); }); } the outer block per
forms a feature detection test to make sure service workers are supported before trying to register one.
Using readable streams - Web APIs
// fetch the original image fetch('png-logo.png') // retrieve its body as readablestream .then(response => response.body) // create a gray-scaled png stream out of the original .then(rs => logreadablestream('fetch response stream', rs)) .then(body => body.pipethrough(new pngtrans
formstream())) .then(rs => logreadablestream('png chunk stream', rs)) summary that explains the basics of “default” readable streams.
UIEvent.layerX - Web APIs
examples <html> <head> <title>pagex\pagey & layerx\layery example</title> <script type="text/javascript"> function showcoords(evt){ var form = document.
forms.form_coords; var parent_id = evt.target.parentnode.id; form.parentid.value = parent_id; form.pagexcoords.value = evt.pagex; form.pageycoords.value = evt.pagey; form.layerxcoords.value = evt.layerx; form.layerycoords.value = evt.layery; } </script> <style type="text/css"> #d1 { border: solid blue 1px; padding: 20px; } #d2 { position: absolute; top: 180px; left: 80%; r...
UIEvent.layerY - Web APIs
example <html> <head> <title>pagex\pagey & layerx\layery example</title> <script type="text/javascript"> function showcoords(evt){ var form = document.
forms.form_coords; var parent_id = evt.target.parentnode.id; form.parentid.value = parent_id; form.pagexcoords.value = evt.pagex; form.pageycoords.value = evt.pagey; form.layerxcoords.value = evt.layerx; form.layerycoords.value = evt.layery; } </script> <style type="text/css"> #d1 { border: solid blue 1px; padding: 20px; } #d2 { position: absolute; top: 180px; left: 80%; r...
UIEvent.pageY - Web APIs
example <html> <head> <title>pagex\pagey & layerx\layery example</title> <script type="text/javascript"> function showcoords(evt){ var form = document.
forms.form_coords; var parent_id = evt.target.parentnode.id; form.parentid.value = parent_id; form.pagexcoords.value = evt.pagex; form.pageycoords.value = evt.pagey; form.layerxcoords.value = evt.layerx; form.layerycoords.value = evt.layery; } </script> <style type="text/css"> #d1 { border: solid blue 1px; padding: 20px; } #d2 { position: absolute; top: 180px; left: 80%; ...
URL API - Web APIs
the url standard also defines concepts such as domains, hosts, and ip addresses, and also attempts to describe in a standard way the legacy application/x-www-form-urlencoded mime type used to submit web
forms' contents as a set of key/value pairs.
VRStageParameters - Web APIs
properties vrstageparameters.sittingtostandingtransform read only contains a matrix that trans
forms the sitting-space view matrices of vrframedata to standing-space.
WebGLRenderingContext.vertexAttribPointer() - Web APIs
inter(2, 2, gl.unsigned_short, true, 20, 16); gl.enablevertexattribarray(2); //set the attributes in the vertex shader to the same indices gl.bindattriblocation(shaderprogram, 0, 'position'); gl.bindattriblocation(shaderprogram, 1, 'normal'); gl.bindattriblocation(shaderprogram, 2, 'texuv'); //since the attribute indices have changed, we must re-link the shader //note that this will reset all uni
forms that were previously set.
WebGLRenderingContext - Web APIs
uni
forms and attributes webglrenderingcontext.disablevertexattribarray() disables a vertex attribute array at a given position.
WebGL best practices - Web APIs
while the common approach is to set canvas.width = width * devicepixelratio, this will cause moire artifacts with non-integer values of devicepixelratio, as is common with ui scaling on windows, as well as zooming on all plat
forms.
A simple RTCDataChannel sample - Web APIs
function handlereceivemessage(event) { var el = document.createelement("p"); var txtnode = document.createtextnode(event.data); el.appendchild(txtnode); receivebox.appendchild(el); } this method simply per
forms some basic dom injection; it creates a new <p> (paragraph) element, then creates a new text node containing the message text, which is received in the event's data property.
WebRTC API - Web APIs
negotiationneeded in
forms the rtcpeerconnection that it needs to perform session negotiation by calling createoffer() followed by setlocaldescription().
Using bounded reference spaces - Web APIs
note that if the underlying platform defines a fixed room-scale origin and boundary, it may initialize any uninitialized values to match that predefined information; this is not unexpected behavior for users of these plat
forms.
Fundamentals of WebXR - Web APIs
some plat
forms may provide previously-cleared frames to you, while others may optimize performance by not erasing the framebuffers in order to avoid having to touch each pixel twice per frame.
Inputs and input sources - Web APIs
action the avatar per
forms an action, such as using an object or weapon, jumping, or any other activity not related to basic movement and rotation.
Lighting a WebXR setting - Web APIs
lighting estimation lighting estimation is a technique used by augmented reality plat
forms to attempt to match the lighting of the virtual objects in the scene to the lighting of the real world surrounding the viewer.
WebXR Device API - Web APIs
matrix math for the web a guide covering how matrices can be used on the web, including both for css trans
forms and for webgl purposes, as well as to handle the positioning and orientation of objects in webxr contexts.
Window.name - Web APIs
= window.name; window.name = string; example <script> // open a tab with a specific browsing context name const othertab = window.open("url1", "_blank"); if (othertab) othertab.name = "other-tab"; </script> <a href="url2" target="other-tab">this link will be opened in the other tab.</a> notes the name of the window is used primarily for setting targets for hyperlinks and
forms.
XRInputSource - Web APIs
the device is specific to the platform being used, but provides the direction in which it is being aimed and optionally may generate events if the user triggers per
forms actions using the device.
XRReferenceSpace.getOffsetReferenceSpace() - Web APIs
then, when drawing the scene, you can use the offset reference space to not only position objects relative to one another, but to apply the needed trans
forms to render objects properly based upon the viewer's position.
XRReferenceSpace: reset event - Web APIs
the user is in an unbounded reference space and has moved far enough from the starting position (the reference space's origin) that floating-point or other
forms of error or drift are problematic.
XRReferenceSpace - Web APIs
this is useful for positioning objects while rendering, and to perform the needed trans
forms when changing the viewer's position and/or orientation in 3d space.
XRReferenceSpaceEvent - Web APIs
this is an opportunity for your app to update any stored trans
forms, position/orientation information, or the like—or to dump any cached values based on the reference's space's origin so you can recompute them as needed.
XRRigidTransform - Web APIs
xrrigidtransform is used to specify trans
forms throughout the webxr apis, including: the offset and orientation relative to the parent reference space to use when creating a new reference space with getoffsetreferencespace().
XRSession - Web APIs
this generally corresponds to the user pressing a trigger, touchpad, or button, speaks a command, or per
forms a recognizable gesture.
XRView.transform - Web APIs
the resulting model view matrix will apply all the trans
forms needed to move and rotate the object based on the relative positions of the object and the camera.
Browser Differences - Web APIs
browser differences netscape 7.x (all plat
forms) and internet explorer 6 (windows) support the w3c xslt 1.0 standard (http://www.w3.org/tr/xslt).
Web APIs
ate storageevent storagemanager storagequota stylepropertymap stylepropertymapreadonly stylesheet stylesheetlist submitevent subtlecrypto syncevent syncmanager t taskattributiontiming text textdecoder textencoder textmetrics textrange texttrack texttrackcue texttracklist timeevent timeranges touch touchevent touchlist trackdefault trackdefaultlist trackevent transferable trans
formstream transitionevent treewalker typeinfo u uievent ulongrange url urlsearchparams urlutilsreadonly usb usbalternateinterface usbconfiguration usbdevice usbendpoint usbintransferresult usbinterface usbisochronousintransferpacket usbisochronousintransferresult usbisochronousouttransferpacket usbisochronousouttransferresult usbouttransferresult usvstring userdatahandler user...
ARIA guides - Accessibility
error handling in
forms labeling widgets labeling composite widgets and regions managing focus in composite widgets (aria-activedescendant vs roving tabindex) using landmark roles handling dynamic updates & live regions virtual vs.
Using the aria-invalid attribute - Accessibility
used in aria roles all elements of the base markup related aria techniques using the aria-required attribute using the alert role compatibility tbd: add support information for common ua and at product combinations additional resources wai-aria specification for the aria-invalid property wai authoring practices for
forms ...
Using the aria-required attribute - Accessibility
e (includes the use of the aria-required attribute) notes used in aria roles combobox gridcell listbox radiogroup spinbutton textbox tree related aria techniques using the aria-invalid attribute compatibility tbd: add support information for common ua and at product combinations additional resources wai-aria specification for aria-required wai-aria authoring practices for
forms constraint validation in html5 ...
ARIA: dialog role - Accessibility
in addition to the needed control, dialogs can contain any number of focusable elements, even entire
forms or other container widgets like tabs.
Operable - Accessibility
this article provides practical advice on how to write your web content so that it con
forms to the success criteria outlined in the operable principle of the web content accessibility guidelines (wcag) 2.0 and 2.1.
Robust - Accessibility
this article provides practical advice on how to write your web content so that it con
forms to the success criteria outlined in the robust principle of the web content accessibility guidelines (wcag) 2.0 and 2.1.
Accessibility
mobile accessibility with web access on mobile devices being so popular, and popular plat
forms such as ios and android having fully-fledged accessibility tools, it is important to consider the accessibility of your web content on these plat
forms.
:focus-visible - CSS: Cascading Style Sheets
tips for designing useful and usable focus indicators cognition it may not be obvious as to why the focus indicator is appearing and disappearing if a person is using mixed
forms of input.
system - CSS: Cascading Style Sheets
syntax /* keyword values */ system: cyclic; system: numeric; system: alphabetic; system: symbolic; system: additive; system: fixed; /* combined values */ system: fixed 3; system: extends decimal; this may take one of three
forms: one of the keyword values cyclic, numeric, alphabetic, symbolic, additive, or fixed.
hover - CSS: Cascading Style Sheets
none the primary input mechanism cannot hover at all or cannot conveniently hover (e.g., many mobile devices emulate hovering when the user per
forms an inconvenient long tap), or there is no primary pointing input mechanism.
@supports - CSS: Cascading Style Sheets
� /* css applied when animations are supported without a prefix */ @keyframes { /* other at-rules can be nested inside */ … } } testing for the support of a given css property or a prefixed version @supports ((perspective: 10px) or (-moz-perspective: 10px) or (-webkit-perspective: 10px) or (-ms-perspective: 10px) or (-o-perspective: 10px)) { … /* css applied when 3d trans
forms, prefixed or not, are supported */ } testing for the non-support of a specific css property @supports not ((text-align-last: justify) or (-moz-text-align-last: justify)) { … /* css to provide fallback alternative for text-align-last: justify */ } testing for the support of custom properties @supports (--foo: green) { body { color: var(--varname); } } testing for the support of a...
Subgrid - CSS: Cascading Style Sheets
see also on the mozilla developer youtube channel, see the videos laying out
forms using subgrid and don't wait to use subgrid for better card layouts hello subgrid!
Using CSS transitions - CSS: Cascading Style Sheets
ctor("div.box"); if (el) { el.classname = "box1"; } else { el = document.queryselector("div.box1"); el.classname = "box"; } return el; } var intervalid = window.setinterval(updatetransition, 7000); the shorthand css syntax is written as follows: div { transition: <property> <duration> <timing-function> <delay>; } examples simple example this example per
forms a four-second font size transition with a two-second delay between the time the user mouses over the element and the beginning of the animation effect: #delay { font-size: 14px; transition-property: font-size; transition-duration: 4s; transition-delay: 2s; } #delay:hover { font-size: 36px; } multiple animated properties example html content <body> <p>the box below combines tr...
CSS reference - CSS: Cascading Style Sheets
tings (@font-face)font-weightfont-weight (@font-face)format()fr<frequency><frequency-percentage>:fullscreenggapgrad<gradient>grayscale()gridgrid-areagrid-auto-columnsgrid-auto-flowgrid-auto-rowsgrid-columngrid-column-endgrid-column-startgrid-rowgrid-row-endgrid-row-startgrid-templategrid-template-areasgrid-template-columnsgrid-template-rowshhzhanging-punctuationheightheight (@viewport)@historical-
forms:hoverhsl()hsla()hue-rotate()hyphensi<ident><image>image()image-orientationimage-renderingimage-set()@importin:in-range:indeterminateinheritinitialinline-sizeinsetinset()inset-blockinset-block-endinset-block-startinset-inlineinset-inline-endinset-inline-start<integer>:invalidinvert()isolationjjustify-contentjustify-itemsjustify-selfkkhz@keyframesl:lang:last-child:last-of-typeleader():leftleft@left...
CSS Tutorials - CSS: Cascading Style Sheets
css trans
forms trans
forms allow you to change the position of elements by modifying their coordinate space: it allows for translating, rotating, and deforming them in the 2d or 3d spaces.
Actual value - CSS: Cascading Style Sheets
calculating a property's actual value the user agent per
forms four steps to calculate a property's actual (final) value: first, the specified value is determined based on the result of cascading, inheritance, or using the initial value.
appearance (-moz-appearance, -webkit-appearance) - CSS: Cascading Style Sheets
t-appearance: caret; } <div>lorem</div> firefox chrome safari edge checkbox-container div { color: black; -moz-appearance: checkbox-container; -webkit-appearance: checkbox-container; } <div>lorem</div> firefox the element is drawn like a container for a checkbox, which may include a prelighting background effect under certain plat
forms.
drop-shadow() - CSS: Cascading Style Sheets
the box-shadow property creates a rectangular shadow behind an element's entire box, while the drop-shadow() filter function creates a shadow that con
forms to the shape (alpha channel) of the image itself.
font-feature-settings - CSS: Cascading Style Sheets
mples enabling various font features /* use small-cap alternate glyphs */ .smallcaps { font-feature-settings: "smcp" on; } /* convert both upper and lowercase to small caps (affects punctuation also) */ .allsmallcaps { font-feature-settings: "c2sc", "smcp"; } /* use zeros with a slash through them to differentiate from "o" */ .nicezero { font-feature-settings: "zero"; } /* enable historical
forms */ .hist { font-feature-settings: "hist"; } /* disable common ligatures, usually on by default */ .noligs { font-feature-settings: "liga" 0; } /* enable tabular (monospaced) figures */ td.tabular { font-feature-settings: "tnum"; } /* enable automatic fractions */ .fractions { font-feature-settings: "frac"; } /* use the second available swash character */ .swash { font-feature-settings: "swsh"...
font-variant-position - CSS: Cascading Style Sheets
it also applies to ::first-letter and ::first-line.inheritedyescomputed valueas specifiedanimation typediscrete formal syntax normal | sub | super examples setting superscript and subscript
forms html <p class="normal">normal!</p> <p class="super">super!</p> <p class="sub">sub!</p> css p { display: inline; } .normal { font-variant-position: normal; } .super { font-variant-position: super; } .sub { font-variant-position: sub; } result specifications specification status comment css fonts module level 3the definition of 'font-variant-positio...
font-variation-settings - CSS: Cascading Style Sheets
syntax /* use the default settings */ font-variation-settings: normal; /* set values for variable font axis names */ font-variation-settings: "xhgt" 0.7; /* global values */ font-variation-settings: inherit; font-variation-settings: initial; font-variation-settings: unset; values this property's value can take one of two
forms: normal text is laid out using default settings.
font - CSS: Cascading Style Sheets
injectcss; getproperties = function () { shorttext = getcheckedvalue("font_style") + " " + getcheckedvalue("font_variant") + " " + getcheckedvalue("font_weight") + " " + getcheckedvalue("font_size") + getcheckedvalue("line_height") + " " + getcheckedvalue("font_family"); return shorttext; } getcheckedvalue = function(radio_name) { oradio = document.
forms[0].elements[radio_name]; for (var i = 0; i < oradio.length; i++) { if(oradio[i].checked) { var propinput = "input_" + radio_name, curelemname = "input_" + radio_name, curelem = document.getelementbyid(curelemname); curelem.value = oradio[i].value; return oradio[i].value; } } } setcss = function () { getproperties(); injectcss(shorttext); } ...
grid-auto-flow - CSS: Cascading Style Sheets
syntax /* keyword values */ grid-auto-flow: row; grid-auto-flow: column; grid-auto-flow: dense; grid-auto-flow: row dense; grid-auto-flow: column dense; /* global values */ grid-auto-flow: inherit; grid-auto-flow: initial; grid-auto-flow: unset; this property may take one of two
forms: a single keyword: one of row, column, or dense.
justify-items - CSS: Cascading Style Sheets
ine; justify-items: last baseline; /* overflow alignment (for positional alignment only) */ justify-items: safe center; justify-items: unsafe center; /* legacy alignment */ justify-items: legacy right; justify-items: legacy left; justify-items: legacy center; /* global values */ justify-items: inherit; justify-items: initial; justify-items: unset; this property can take one of four different
forms: basic keywords: one of the keyword values normal, auto, or stretch.
justify-self - CSS: Cascading Style Sheets
ght; /* pack item from the right */ /* baseline alignment */ justify-self: baseline; justify-self: first baseline; justify-self: last baseline; /* overflow alignment (for positional alignment only) */ justify-self: safe center; justify-self: unsafe center; /* global values */ justify-self: inherit; justify-self: initial; justify-self: unset; this property can take one of three different
forms: basic keywords: one of the keyword values normal, auto, or stretch.
perspective-origin - CSS: Cascading Style Sheets
ez(50px); } .bottom { background: rgba(196, 0, 196, 0.7); transform: rotatex(-90deg) translatez(50px); } /* make the layout a little nicer */ section { background-color: #eee; padding: 10px; font-family: sans-serif; text-align: left; display: grid; grid-template-columns: repeat(3, 1fr); } result specifications specification status comment css trans
forms level 2the definition of 'perspective-origin' in that specification.
perspective - CSS: Cascading Style Sheets
6, 196, 0, 0.7); transform: rotatex(90deg) translatez(50px); } .bottom { background: rgba(196, 0, 196, 0.7); transform: rotatex(-90deg) translatez(50px); } /* make the table a little nicer */ th, p, td { background-color: #eeeeee; padding: 10px; font-family: sans-serif; text-align: left; } result specifications specification status comment css trans
forms level 2the definition of 'perspective' in that specification.
matrix() - CSS: Cascading Style Sheets
ons: matrix( scalex(), skewy(), skewx(), scaley(), translatex(), translatey() ) examples html <div>normal</div> <div class="changed">changed</div> css div { width: 80px; height: 80px; background-color: skyblue; } .changed { transform: matrix(1, 2, -1, 1, 80, 80); background-color: pink; } result specifications specification status comment css trans
forms level 1the definition of 'matrix()' in that specification.
perspective() - CSS: Cascading Style Sheets
ve(4cm) rotatex(-15deg) rotatey(30deg); } .top { background-color: skyblue; transform: rotatex(90deg) translate3d(0, 0, 50px); } .left { background-color: pink; transform: rotatey(-90deg) translate3d(0, 0, 50px); } .front { background-color: limegreen; transform: translate3d(0, 0, 50px); } result specifications specification status comment css trans
forms level 2the definition of 'perspective()' in that specification.
rotate() - CSS: Cascading Style Sheets
olor: lightgray; } .rotate { background-color: transparent; outline: 2px dashed; transform: rotate(45deg); } .rotate-translate { background-color: pink; transform: rotate(45deg) translatex(180px); } .translate-rotate { background-color: gold; transform: translatex(180px) rotate(45deg); } result specifications specification status comment css trans
forms level 1the definition of 'rotate()' in that specification.
rotate3d() - CSS: Cascading Style Sheets
round-color: pink; } result rotating on a custom axis html <div>normal</div> <div class="rotated">rotated</div> css body { perspective: 800px; } div { width: 80px; height: 80px; background-color: skyblue; } .rotated { transform: rotate3d(1, 2, -1, 192deg); background-color: pink; } result specifications specification status comment css trans
forms level 2the definition of 'rotate3d()' in that specification.
rotateX() - CSS: Cascading Style Sheets
1000cos(a)-sin(a)0sin(a)cos(a) 10000cos(a)-sin(a)00sin(a)cos(a)00001 examples html <div>normal</div> <div class="rotated">rotated</div> css div { width: 80px; height: 80px; background-color: skyblue; } .rotated { transform: rotatex(45deg); background-color: pink; } result specifications specification status comment css trans
forms level 2the definition of 'rotatex()' in that specification.
rotateY() - CSS: Cascading Style Sheets
cos(a)0sin(a)010-sin(a)0cos(a) cos(a)0sin(a)00100-sin(a)0cos(a)00001 examples html <div>normal</div> <div class="rotated">rotated</div> css div { width: 80px; height: 80px; background-color: skyblue; } .rotated { transform: rotatey(60deg); background-color: pink; } result specifications specification status comment css trans
forms level 2the definition of 'rotatey()' in that specification.
rotateZ() - CSS: Cascading Style Sheets
cos(a)-sin(a)0sin(a)cos(a)0001 cos(a)-sin(a)00 sin(a)cos(a)00 0010 0001 examples html <div>normal</div> <div class="rotated">rotated</div> css div { width: 80px; height: 80px; background-color: skyblue; } .rotated { transform: rotatez(45deg); background-color: pink; } result specifications specification status comment css trans
forms level 2the definition of 'rotatez()' in that specification.
scale() - CSS: Cascading Style Sheets
ions separately, and translating the origin html <div>normal</div> <div class="scaled">scaled</div> css div { width: 80px; height: 80px; background-color: skyblue; } .scaled { transform: scale(2, 0.5); /* equal to scalex(2) scaley(0.5) */ transform-origin: left; background-color: pink; } result specifications specification status comment css trans
forms level 1the definition of 'scale()' in that specification.
scale3d() - CSS: Cascading Style Sheets
ing the origin of the transformation html <div>normal</div> <div class="scaled">scaled</div> css div { width: 80px; height: 80px; background-color: skyblue; } .scaled { transform: perspective(500px) scale3d(2, 0.7, 0.2) translatez(100px); transform-origin: left; background-color: pink; } result specifications specification status comment css trans
forms level 2the definition of 'scale3d()' in that specification.
scaleX() - CSS: Cascading Style Sheets
s0 01 s00010001 s00010001 s000010000100001 [s 0 0 1 0 0] examples html <div>normal</div> <div class="scaled">scaled</div> css div { width: 80px; height: 80px; background-color: skyblue; } .scaled { transform: scalex(0.6); background-color: pink; } result specifications specification status comment css trans
forms level 1the definition of 'scalex()' in that specification.
scaleY() - CSS: Cascading Style Sheets
10 0s 1000s0001 1000s0001 10000s0000100001 [1 0 0 s 0 0] examples html <div>normal</div> <div class="scaled">scaled</div> css div { width: 80px; height: 80px; background-color: skyblue; } .scaled { transform: scaley(0.6); background-color: pink; } result specifications specification status comment css trans
forms level 1the definition of 'scaley()' in that specification.
scaleZ() - CSS: Cascading Style Sheets
ve { /* includes a perspective to create a 3d space */ transform: perspective(400px) translatez(-100px); background-color: limegreen; } .scaled-translated { /* includes a perspective to create a 3d space */ transform: perspective(400px) scalez(2) translatez(-100px); background-color: pink; } result specifications specification status comment css trans
forms level 2the definition of 'scalez()' in that specification.
skew() - CSS: Cascading Style Sheets
rm: skew(10deg); /* equal to skewx(10deg) */ background-color: pink; } result using two angles html <div>normal</div> <div class="skewed">skewed</div> css div { width: 80px; height: 80px; background-color: skyblue; } .skewed { transform: skew(10deg, 10deg); background-color: pink; } result specifications specification status comment css trans
forms level 1the definition of 'skew()' in that specification.
skewX() - CSS: Cascading Style Sheets
010001 1tan(a)00010000100001 [1 0 tan(a) 1 0 0] examples html <div>normal</div> <div class="skewed">skewed</div> css div { width: 80px; height: 80px; background-color: skyblue; } .skewed { transform: skewx(10deg); /* equal to skew(10deg) */ background-color: pink; } result specifications specification status comment css trans
forms level 1the definition of 'skewx()' in that specification.
skewY() - CSS: Cascading Style Sheets
0tan(a)10001 100tan(a)10001 1000tan(a)10000100001 [1 tan(a) 0 1 0 0] examples html <div>normal</div> <div class="skewed">skewed</div> css div { width: 80px; height: 80px; background-color: skyblue; } .skewed { transform: skewy(40deg); background-color: pink; } result specifications specification status comment css trans
forms level 1the definition of 'skewy()' in that specification.
translate() - CSS: Cascading Style Sheets
*/ background-color: pink; } result combining y-axis and x-axis translation html <div>static</div> <div class="moved">moved</div> <div>static</div> css div { width: 60px; height: 60px; background-color: skyblue; } .moved { transform: translate(10px, 10px); background-color: pink; } result specifications specification status comment css trans
forms level 1the definition of 'translate()' in that specification.
translate3d() - CSS: Cascading Style Sheets
ink; } result combining z-axis and x-axis translation html <div>static</div> <div class="moved">moved</div> <div>static</div> css div { width: 60px; height: 60px; background-color: skyblue; } .moved { transform: perspective(500px) translate3d(10px, 0, 100px); background-color: pink; } result specifications specification status comment css trans
forms level 2the definition of 'translate3d()' in that specification.
translateX() - CSS: Cascading Style Sheets
formal syntax translatex(<length-percentage>) examples html <div>static</div> <div class="moved">moved</div> <div>static</div> css div { width: 60px; height: 60px; background-color: skyblue; } .moved { transform: translatex(10px); /* equal to translate(10px) */ background-color: pink; } result specifications specification status comment css trans
forms level 1the definition of 'translatex()' in that specification.
translateY() - CSS: Cascading Style Sheets
[1 0 0 1 0 t] formal syntax translatey(<length-percentage>) examples html <div>static</div> <div class="moved">moved</div> <div>static</div> css div { width: 60px; height: 60px; background-color: skyblue; } .moved { transform: translatey(10px); background-color: pink; } result specifications specification status comment css trans
forms level 1the definition of 'translatey()' in that specification.
transform-origin - CSS: Cascading Style Sheets
in: 100% -30%; <div class="box10"> </div> .box10 { margin: 0.5em; width: 3em; height: 3em; border: solid 1px; background-color: palegreen; transform: skewy(50deg); -webkit-transform: skewy(50deg); transform-origin: 100% -30%; -webkit-transform-origin: 100% -30%; } specifications specification status comment css trans
forms level 1the definition of 'transform-origin' in that specification.
CSS: Cascading Style Sheets
css key concepts: the syntax and
forms of the language specificity, inheritance and the cascade css units and values box model and margin collapse the containing block stacking and block-formatting contexts initial, computed, used, and actual values css shorthand properties css flexible box layout css grid layout media queries animation cookbook the css layout cookbook aims to bring together re...
Demos of open web technologies
2d graphics canvas blob sallad: an interactive blob using javascript and canvas (code demos) 3d raycaster processing.js p5js 3d on 2d canvas minipaint: image editor (source code) zen photon garden (source code) multi touch in canvas demo (source code) svg bubblemenu (visual effects and interaction) html transformations using foreignobject (visual effects and trans
forms) phonetics guide (interactive) 3d objects demo (interactive) blobular (interactive) video embedded in svg (or use the local download) summer html image map creator (source code) video video 3d animation "mozilla constantly evolving" video 3d animation "floating dance" streaming anime, movie trailer and interview billy's browser firefox flick virtual barber shop transformers movie t...
regexp:match() - EXSLT
xslt/xpath reference: xslt elements, exslt functions, xpath functions, xpath axes regexp:match() per
forms regular expression matching on a string, returning the submatches found as a result.
Regular expressions (regexp) - EXSLT
regexp:match()regexp:match() per
forms regular expression matching on a string, returning the submatches found as a result.regexp:replace()regexp:replace() replaces the portions of a string that match a given regular expression with the contents of another string.regexp:test()regexp:test() tests to see whether a string matches a specified regular expression.
Ajax - Developer guides
this article will explain how to use some ajax techniques, like: analyzing and manipulating the response of the server monitoring the progress of a request submitting
forms and upload binary files – in pure ajax, or using formdata objects using ajax within web workers fetch api the fetch api provides an interface for fetching resources.
Creating a cross-browser video player - Developer guides
a poster image is defined for the video, and the preload attribute is set to metadata, which in
forms the browser that it should initially only attempt to load the metadata from the video file rather than the entire video file.
Audio and Video Delivery - Developer guides
consider this html: <video> <source id="mp4_src" src="video.mp4" type='video/mp4; codecs="avc1.42e01e, mp4a.40.2"'> </source> <source id="3gp_src" src="video.3gp" type='video/3gpp; codecs="mp4v.20.8, samr"'> </source> <source id="ogg_src" src="video.ogv" type='video/ogv; codecs="theora, vorbis"'> </source> </video> since firefox doesn't support mp4 and 3gp on some plat
forms due to their patent-encumbered nature, the <source> elements with the ids "mp4_src" and "3gp_src" will receive error events before the ogg resource is loaded.
Index - Developer guides
26 using device orientation with 3d trans
forms advanced, css, dom, needsupdate, orientation, trans
forms this article provides tips on how to use device orientation information in tandem with css 3d trans
forms.
User input and controls - Developer guides
pointer events when dealing with devices that incorporate multiple
forms of input, like mouse, finger touch and pen input, it might be hard to develop a solution that works for all these different control mechanisms.
Date and time formats used in HTML - HTML: Hypertext Markup Language
elements that use such formats include certain
forms of the <input> element that let the user choose or specify a date, time, or both, as well as the <ins> and <del> elements, whose datetime attribute specifies the date or date and time at which the insertion or deletion of content occurred.
<hgroup> - HTML: Hypertext Markup Language
so in the abstract outline produced by the html outline algorithm defined in the html specification, the <hgroup> as a whole
forms a single logical heading, with the entire set of <h1>–<h6> children of the <hgroup> going into the outline as one multi-level unit, to comprise that single logical heading in the abstract outline.
<input type="button"> - HTML: Hypertext Markup Language
<input type="button" value="click me"> if you don't specify a value, you get an empty button: <input type="button"> using buttons <input type="button"> elements have no default behavior (their cousins, <input type="submit"> and <input type="reset"> are used to submit and reset
forms, respectively).
<input type="date"> - HTML: Hypertext Markup Language
span { position: relative; } span::after { right: -18px; position: absolute; } input:invalid + span::after { content: '✖'; } input:valid + span::after { content: '✓'; } at the moment, the best way to deal with dates in
forms in a cross-browser way is to have the user enter the day, month, and year in separate controls, or to use a javascript library such as jquery date picker.
<input type="email"> - HTML: Hypertext Markup Language
using email inputs e-mail addresses are among the most frequently-inputted textual data
forms on the web; they're used when logging into web sites, when requesting information, to allow order confirmation, for webmail, and so forth.
<input type="month"> - HTML: Hypertext Markup Language
div { margin-bottom: 10px; position: relative; } input[type="number"] { width: 100px; } input + span { padding-right: 30px; } input:invalid+span:after { position: absolute; content: '✖'; padding-left: 5px; } input:valid+span:after { position: absolute; content: '✓'; padding-left: 5px; } the best way to deal with dates in
forms in a cross-browser way (until all of the major browsers have supported them for a while) is to get the user to enter the month and year in separate controls (<select> elements being popular; see below for an implementation), or use javascript libraries such as the jquery date picker plugin.
<link>: The External Resource Link element - HTML: Hypertext Markup Language
for example, a link to the site's favicon: <link rel="icon" href="favicon.ico"> there are a number of other icon rel values, mainly used to indicate special icon types for use on various mobile plat
forms, e.g.: <link rel="apple-touch-icon-precomposed" sizes="114x114" href="apple-icon-114.png" type="image/png"> the sizes attribute indicates the icon size, while the type contains the mime type of the resource being linked.
<main> - HTML: Hypertext Markup Language
content that is repeated across a set of documents or document sections such as sidebars, navigation links, copyright information, site logos, and search
forms shouldn't be included unless the search form is the main function of the page.
Cross-Origin Resource Sharing (CORS) - HTTP
code of this sort might be used in javascript deployed on foo.example: const xhr = new xmlhttprequest(); const url = 'https://bar.other/resources/public-data/'; xhr.open('get', url); xhr.onreadystatechange = somehandler; xhr.send(); this per
forms a simple exchange between the client and the server, using cors headers to handle the privileges: let's look at what the browser will send to the server in this case, and let's see how the server responds: get /resources/public-data/ http/1.1 host: bar.other user-agent: mozilla/5.0 (macintosh; intel mac os x 10.14; rv:71.0) gecko/20100101 firefox/71.0 accept: text/html,application/xhtml+xml,a...
HTTP caching - HTTP
common
forms of caching entries are: successful results of a retrieval request: a 200 (ok) response to a get request containing a resource like html documents, images or files.
Content negotiation - HTTP
besides falling back to the server-driven negotiation, this method is almost always used in conjunction with scripting, especially with javascript redirection: after having checked for the negotiation criteria, the script per
forms the redirection.
Accept-Charset - HTTP
using content negotiation, the server selects one of the encodings, uses it, and in
forms the client of its choice within the content-type response header, usually in a charset= parameter.
Accept-Encoding - HTTP
using content negotiation, the server selects one of the proposals, uses it and in
forms the client of its choice with the content-encoding response header.
Accept-Language - HTTP
(by languages, we mean natural languages, such as english, and not programming languages.) using content negotiation, the server then selects one of the proposals, uses it and in
forms the client of its choice with the content-language response header.
Accept - HTTP
using content negotiation, the server then selects one of the proposals, uses it and in
forms the client of its choice with the content-type response header.
Connection - HTTP
chrome and firefox ignore them in http/2 responses, but safari con
forms to the http/2 spec requirements and won’t load any response which contains them.
Content-Type - HTTP
examples content-type in html
forms in a post request, resulting from an html form submission, the content-type of the request is specified by the enctype attribute on the <form> element.
Expect - HTTP
expect: 100-continue directives 100-continue in
forms recipients that the client is about to send a (presumably large) message body in this request and wishes to receive a 100 (continue) interim response.
Keep-Alive - HTTP
chrome and firefox ignore them in http/2 responses, but safari con
forms to the http/2 spec requirements and won’t load any response which contains them.
Large-Allocation - HTTP
this page would be loaded in a new process due to a large-allocation header, however large-allocation process creation is disabled on non-win32 plat
forms.
Strict-Transport-Security - HTTP
the http strict transport security header in
forms the browser that it should never load a site using http and should automatically convert all attempts to access the site using http to https requests instead.
X-Forwarded-For - HTTP
examples x-forwarded-for: 2001:db8:85a3:8d3:1319:8a2e:370:7348 x-forwarded-for: 203.0.113.195 x-forwarded-for: 203.0.113.195, 70.41.3.18, 150.172.238.178 other non-standard
forms: # used for some google services x-proxyuser-ip: 203.0.113.19 specifications not part of any current specification.
X-Forwarded-Proto - HTTP
examples x-forwarded-proto: https other non-standard
forms: # microsoft front-end-https: on x-forwarded-protocol: https x-forwarded-ssl: on x-url-scheme: https specifications not part of any current specification.
CONNECT - HTTP
request has body no successful response has body yes safe no idempotent no cacheable no allowed in html
forms no syntax connect www.example.com:443 http/1.1 example some proxy servers might need authority to create a tunnel.
DELETE - HTTP
request has body may successful response has body may safe no idempotent yes cacheable no allowed in html
forms no syntax delete /file.html http/1.1 example request delete /file.html http/1.1 responses if a delete method is successfully applied, there are several response status codes possible: a 202 (accepted) status code if the action will likely succeed but has not yet been enacted.
GET - HTTP
request has body no successful response has body yes safe yes idempotent yes cacheable yes allowed in html
forms yes syntax get /index.html specifications specification title rfc 7231, section 4.3.1: get hypertext transfer protocol (http/1.1): semantics and content ...
HEAD - HTTP
request has body no successful response has body no safe yes idempotent yes cacheable yes allowed in html
forms no syntax head /index.html specifications specification title rfc 7231, section 4.3.2: head hypertext transfer protocol (http/1.1): semantics and content ...
OPTIONS - HTTP
request has body no successful response has body yes safe yes idempotent yes cacheable no allowed in html
forms no syntax options /index.html http/1.1 options * http/1.1 examples identifying allowed request methods to find out which request methods a server supports, one can use the curl command-line program to issue an options request: curl -x options https://example.org -i the response then contains an allow header that holds the allowed methods: http/1.1 204 no content allow: options, get, head, post cache-control: max-a...
PATCH - HTTP
request has body yes successful response has body yes safe no idempotent no cacheable no allowed in html
forms no syntax patch /file.txt http/1.1 example request patch /file.txt http/1.1 host: www.example.com content-type: application/example if-match: "e0023aa4e" content-length: 100 [description of changes] response a successful response is indicated by any 2xx status code.
POST - HTTP
request has body yes successful response has body yes safe no idempotent no cacheable only if freshness information is included allowed in html
forms yes syntax post /test example a simple form using the default application/x-www-form-urlencoded content type: post /test http/1.1 host: foo.example content-type: application/x-www-form-urlencoded content-length: 27 field1=value1&field2=value2 a form using the multipart/form-data content type: post /test http/1.1 host: foo.example content-type: multipart/form-data;boundary="bound...
PUT - HTTP
request has body yes successful response has body no safe no idempotent yes cacheable no allowed in html
forms no syntax put /new.html http/1.1 example request put /new.html http/1.1 host: example.com content-type: text/html content-length: 16 <p>new file</p> responses if the target resource does not have a current representation and the put request successfully creates one, then the origin server must inform the user agent by sending a 201 (created) response.
An overview of HTTP - HTTP
http flow when a client wants to communicate with a server, either the final server or an intermediate proxy, it per
forms the following steps: open a tcp connection: the tcp connection is used to send a request, or several, and receive an answer.
Redirections in HTTP - HTTP
in this case, the response is a 303 (see other) redirect that links to a page indicating that the action has been scheduled, and eventually in
forms about its progress, or allows to cancel it.
HTTP resources and specifications - HTTP
proposed standard rfc 3986 uniform resource identifier (uri): generic syntax internet standard rfc 5988 web linking defines the link header proposed standard experimental spec hypertext transfer protocol (http) keep-alive header informational (expired) draft spec http client hints ietf draft rfc 7578 returning values from
forms: multipart/form-data proposed standard rfc 6266 use of the content-disposition header field in the hypertext transfer protocol (http) proposed standard rfc 2183 communicating presentation information in internet messages: the content-disposition header field only a subset of syntax of the content-disposition header can be used in the context of http messages.
HTTP response status codes - HTTP
406 not acceptable this response is sent when the web server, after performing server-driven content negotiation, doesn't find any content that con
forms to the criteria given by the user agent.
Details of the object model - JavaScript
local versus inherited values when you access an object property, javascript per
forms these steps, as described earlier in this chapter: check to see if the value exists locally.
Indexed collections - JavaScript
the bracket syntax is called an "array literal" or "array initializer." it's shorter than other
forms of array creation, and so is generally preferred.
Loops and iteration - JavaScript
it checks that i is less than the number of options in the <select> element, per
forms the succeeding if statement, and increments i by after each pass through the loop.
JavaScript modules - JavaScript
this is possible using export syntax of the following
forms in the parent module: export * from 'x.js' export { name } from 'x.js' for an example, see our module-aggregation directory.
Array.prototype.copyWithin() - JavaScript
, 2] [1, 2, 3, 4, 5].copywithin(0, 3) // [4, 5, 3, 4, 5] [1, 2, 3, 4, 5].copywithin(0, 3, 4) // [4, 2, 3, 4, 5] [1, 2, 3, 4, 5].copywithin(-2, -3, -1) // [1, 2, 3, 3, 4] [].copywithin.call({length: 5, 3: 1}, 0, 3) // {0: 1, 3: 1, length: 5} // es2015 typed arrays are subclasses of array var i32a = new int32array([1, 2, 3, 4, 5]) i32a.copywithin(0, 2) // int32array [3, 4, 5, 4, 5] // on plat
forms that are not yet es2015 compliant: [].copywithin.call(new int32array([1, 2, 3, 4, 5]), 0, 3, 4); // int32array [4, 2, 3, 4, 5] specifications specification ecmascript (ecma-262)the definition of 'array.prototype.copywithin' in that specification.
Date() constructor - JavaScript
parameters there are four basic
forms for the date() constructor: no parameters when no parameters are provided, the newly-created date object represents the current date and time as of the time of instantiation.
Date.parse() - JavaScript
when the time zone offset is absent, date-only
forms are interpreted as a utc time and date-time
forms are interpreted as local time.
Generator - JavaScript
the generator object is returned by a generator function and it con
forms to both the iterable protocol and the iterator protocol.
Map - JavaScript
performance per
forms better in scenarios involving frequent additions and removals of key-value pairs.
Math.atan() - JavaScript
examples using math.atan() math.atan(1); // 0.7853981633974483 math.atan(0); // 0 math.atan(-0); // -0 math.atan(infinity); // 1.5707963267948966 math.atan(-infinity); // -1.5707963267948966 // the angle that the line [(0,0);(x,y)]
forms with the x-axis in a cartesian coordinate system math.atan(y / x); note that you may want to avoid using ±infinity for stylistic reasons.
Math.fround() - JavaScript
internally, javascript continues to treat the number as a 64-bit float, it just per
forms a "round to even" on the 23rd bit of the mantissa, and sets all following mantissa bits to 0.
Math - JavaScript
since humans tend to think in degrees, and some functions (such as css trans
forms) can accept degrees, it is a good idea to keep functions handy that convert between the two: function degtorad(degrees) { return degrees * (math.pi / 180); }; function radtodeg(rad) { return rad / (math.pi / 180); }; calculating the height of an equalateral triangle if we want to calculate the height of an equalateral triangle, and we know its side length is 100, we can use the formulae l...
Number - JavaScript
37 is still a number, not a bigint.) number may also be expressed in literal
forms like 0b101, 0o13, 0x0a.
String - JavaScript
it per
forms type conversion when called as a function, rather than as a constructor, which is usually more useful.
WebAssembly.instantiate() - JavaScript
this function has two overloads: the primary overload takes the webassembly binary code, in the form of a typed array or arraybuffer, and per
forms both compilation and instantiation in one step.
encodeURIComponent() - JavaScript
e a surrogate which is not part of a high-low pair, e.g., // high-low pair ok console.log(encodeuricomponent('\ud800\udfff')); // lone high surrogate throws "urierror: malformed uri sequence" console.log(encodeuricomponent('\ud800')); // lone low surrogate throws "urierror: malformed uri sequence" console.log(encodeuricomponent('\udfff')); use encodeuricomponent() on user-entered fields from
forms post'd to the server.
null - JavaScript
it is not defined and has never been initialized: foo; //referenceerror: foo is not defined // foo is known to exist now but it has no type or value: var foo = null; foo; //null examples difference between null and undefined when checking for null or undefined, beware of the differences between equality (==) and identity (===) operators, as the former per
forms type-conversion.
for...of - JavaScript
ject to examine all of the parameters passed into a javascript function: (function() { for (const argument of arguments) { console.log(argument); } })(1, 2, 3); // 1 // 2 // 3 iterating over a dom collection iterating over dom collections like nodelist: the following example adds a read class to paragraphs that are direct descendants of an article: // note: this will only work in plat
forms that have // implemented nodelist.prototype[symbol.iterator] const articleparagraphs = document.queryselectorall('article > p'); for (const paragraph of articleparagraphs) { paragraph.classlist.add('read'); } closing iterators in for...of loops, abrupt iteration termination can be caused by break, throw or return.
for - JavaScript
it checks that i is less than nine, per
forms the two succeeding statements, and increments i by 1 after each pass through the loop.
try...catch - JavaScript
this gives us three
forms for the try statement: try...catch try...finally try...catch...finally a catch-block contains statements that specify what to do if an exception is thrown in the try-block.
var - JavaScript
the corresponding name is also added to a list on the internal [[varnames]] slot on the global environment record (which
forms part of the global lexical environment).
font-variant - SVG: Scalable Vector Graphics
ox="0 0 250 30" xmlns="http://www.w3.org/2000/svg"> <text y="20" font-variant="normal">normal text</text> <text x="100" y="20" font-variant="small-caps">small-caps text</text> </svg> usage notes value normal | none | [ <common-lig-values> || <discretionary-lig-values> || <historical-lig-values> || <contextual-alt-values> || stylistic( <feature-value-name> ) || historical-
forms || styleset( <feature-value-name># ) || character-variant( <feature-value-name># ) || swash( <feature-value-name> ) || ornaments( <feature-value-name> ) || annotation( <feature-value-name> ) || [ small-caps | all-small-caps | petite-caps | all-petite-caps | unicase | titling-caps ] || <numeric-figure-values> || <numeric-spacing-values> || <numeric-fraction-values> || ordinal || slashed-zero || <e...
<feComposite> - SVG: Scalable Vector Graphics
the <fecomposite> svg filter primitive per
forms the combination of two input images pixel-wise in image space using one of the porter-duff compositing operations: over, in, atop, out, xor, and lighter.
SVG 2 support in Mozilla - SVG: Scalable Vector Graphics
drawall() deprecated turned into no-ops (bug 734079) externalresourcesrequired attribute removed implementation status unknown auto value for width and height in <image> implementation status unknown referencing entire document with <use> implementation status unknown lang attribute on <desc> and <title> implemented (bug 721920) css trans
forms on outermost <svg> not affecting svgsvgelement.currentscale or svgsvgelement.currenttranslate implementation status unknown rootelement attribute deprecated implementation status unknown svgelementinstance and svgelementinstancelist and corresponding attributes on svguseelement removed implementation status unknown <use> event flow following shadow dom spec.
Gradients in SVG - SVG: Scalable Vector Graphics
the radialgradient above would be rewritten: <radialgradient id="gradient" cx="60" cy="60" r="50" fx="35" fy="35" gradientunits="userspaceonuse"> you can also then apply another transformation to the gradient by using the gradienttransform attribute, but since we haven't introduced trans
forms yet, i'll leave that for later.
SVG In HTML Introduction - SVG: Scalable Vector Graphics
(another style rule makes an error message appear.) this approach has the following points in its favor: we have taken a regular html form that could have been part of an existing web site, and added an attractive, interactive background the approach is backwards compatible to browsers that do not support svg; simply, no background appears in them it's very simple and per
forms very well the picture dynamically sizes itself to the required size in an intelligent way we can have declarative style rules applying to both html and svg the same script manipulates both html and svg the document is entirely standards-based to add a linked image with dom methods to an embedded svg element, one has to use setattributens to set href.
Insecure passwords - Web security
serving login
forms over http is especially dangerous because of the wide variety of attacks that can be used against them to extract a user’s password.