You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
1.2 KiB
41 lines
1.2 KiB
//.CommonJS |
|
var CSSOM = { |
|
CSSRule: require("./CSSRule").CSSRule, |
|
MediaList: require("./MediaList").MediaList |
|
}; |
|
///CommonJS |
|
|
|
|
|
/** |
|
* @constructor |
|
* @see http://dev.w3.org/csswg/cssom/#cssmediarule |
|
* @see http://www.w3.org/TR/DOM-Level-2-Style/css.html#CSS-CSSMediaRule |
|
*/ |
|
CSSOM.CSSMediaRule = function CSSMediaRule() { |
|
CSSOM.CSSRule.call(this); |
|
this.media = new CSSOM.MediaList(); |
|
this.cssRules = []; |
|
}; |
|
|
|
CSSOM.CSSMediaRule.prototype = new CSSOM.CSSRule(); |
|
CSSOM.CSSMediaRule.prototype.constructor = CSSOM.CSSMediaRule; |
|
CSSOM.CSSMediaRule.prototype.type = 4; |
|
//FIXME |
|
//CSSOM.CSSMediaRule.prototype.insertRule = CSSStyleSheet.prototype.insertRule; |
|
//CSSOM.CSSMediaRule.prototype.deleteRule = CSSStyleSheet.prototype.deleteRule; |
|
|
|
// http://opensource.apple.com/source/WebCore/WebCore-658.28/css/CSSMediaRule.cpp |
|
Object.defineProperty(CSSOM.CSSMediaRule.prototype, "cssText", { |
|
get: function() { |
|
var cssTexts = []; |
|
for (var i=0, length=this.cssRules.length; i < length; i++) { |
|
cssTexts.push(this.cssRules[i].cssText); |
|
} |
|
return "@media " + this.media.mediaText + " {" + cssTexts.join("") + "}"; |
|
} |
|
}); |
|
|
|
|
|
//.CommonJS |
|
exports.CSSMediaRule = CSSOM.CSSMediaRule; |
|
///CommonJS
|
|
|