1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- //.CommonJS
- var CSSOM = {
- CSSRule: require("./CSSRule").CSSRule
- };
- ///CommonJS
-
-
- /**
- * @constructor
- * @see https://drafts.csswg.org/cssom/#the-cssgroupingrule-interface
- */
- CSSOM.CSSGroupingRule = function CSSGroupingRule() {
- CSSOM.CSSRule.call(this);
- this.cssRules = [];
- };
-
- CSSOM.CSSGroupingRule.prototype = new CSSOM.CSSRule();
- CSSOM.CSSGroupingRule.prototype.constructor = CSSOM.CSSGroupingRule;
-
-
- /**
- * Used to insert a new CSS rule to a list of CSS rules.
- *
- * @example
- * cssGroupingRule.cssText
- * -> "body{margin:0;}"
- * cssGroupingRule.insertRule("img{border:none;}", 1)
- * -> 1
- * cssGroupingRule.cssText
- * -> "body{margin:0;}img{border:none;}"
- *
- * @param {string} rule
- * @param {number} [index]
- * @see https://www.w3.org/TR/cssom-1/#dom-cssgroupingrule-insertrule
- * @return {number} The index within the grouping rule's collection of the newly inserted rule.
- */
- CSSOM.CSSGroupingRule.prototype.insertRule = function insertRule(rule, index) {
- if (index < 0 || index > this.cssRules.length) {
- throw new RangeError("INDEX_SIZE_ERR");
- }
- var cssRule = CSSOM.parse(rule).cssRules[0];
- cssRule.parentRule = this;
- this.cssRules.splice(index, 0, cssRule);
- return index;
- };
-
- /**
- * Used to delete a rule from the grouping rule.
- *
- * cssGroupingRule.cssText
- * -> "img{border:none;}body{margin:0;}"
- * cssGroupingRule.deleteRule(0)
- * cssGroupingRule.cssText
- * -> "body{margin:0;}"
- *
- * @param {number} index within the grouping rule's rule list of the rule to remove.
- * @see https://www.w3.org/TR/cssom-1/#dom-cssgroupingrule-deleterule
- */
- CSSOM.CSSGroupingRule.prototype.deleteRule = function deleteRule(index) {
- if (index < 0 || index >= this.cssRules.length) {
- throw new RangeError("INDEX_SIZE_ERR");
- }
- this.cssRules.splice(index, 1)[0].parentRule = null;
- };
-
- //.CommonJS
- exports.CSSGroupingRule = CSSOM.CSSGroupingRule;
- ///CommonJS
|