Class TJSStyleManager
Index
Constructors
Accessors
Methods
Constructors
constructor
- new TJSStyle
Manager (opts?): TJSStyleManager Parameters
Optional
opts: {
docKey: string;
document?: Document;
selector?: string;
version?: number;
}Options.
doc
Key : stringRequired key providing a link to a specific style sheet element.
Optional
document?: DocumentTarget document to load styles into.
Optional
selector?: stringSelector element.
Optional
version?: numberAn integer representing the version / level of styles being managed.
Returns TJSStyleManager
Accessors
cssText
- get cssText(): string
Returns string
Provides an accessor to get the
cssText
for the style sheet.
version
- get version(): number
Returns number
Returns the version of this instance.
Methods
clone
- clone(document?): TJSStyleManager
Provides a copy constructor to duplicate an existing TJSStyleManager instance into a new document.
Note: This is used to support the
PopOut
module.Parameters
Optional
document: DocumentTarget browser document to clone into.
Returns TJSStyleManager
New style manager instance.
get
getProperty
removeProperties
- remove
Properties (keys): void Removes the property keys specified. If
keys
is an iterable list then all property keys in the list are removed.Parameters
- keys: Iterable<string, any, any>
The property keys to remove.
Returns void
- keys: Iterable<string, any, any>
Provides a managed dynamic style sheet / element useful in configuring global CSS variables. When creating an instance of TJSStyleManager you must provide a "document key" / string for the style element added. The style element can be accessed via
document[docKey]
.Instances of TJSStyleManager can also be versioned by supplying a positive integer greater than or equal to
1
via the 'version' option. This version number is assigned to the associated style element. When a TJSStyleManager instance is created and there is an existing instance with a version that is lower than the current instance all CSS rules are removed letting the higher version to take precedence. This isn't a perfect system and requires thoughtful construction of CSS variables exposed, but allows multiple independently compiled TRL packages to load the latest CSS variables. It is recommended to always setoverwrite
option of TJSStyleManager.setProperty and TJSStyleManager.setProperties tofalse
when loading initial values.