summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJed Foster <jed@jedfoster.com>2015-01-02 15:09:24 -0800
committerJed Foster <jed@jedfoster.com>2015-01-02 15:09:54 -0800
commit2df00602dac646566b63d73a42915c82232eb3de (patch)
treeaa7036f466bb34cafbe16ebbeb80e718122e3cc5
parent1e9459ccb8a9c34428e4d711c108556c3e53feb0 (diff)
downloadReadmore.js-2df00602dac646566b63d73a42915c82232eb3de.zip
Readmore.js-2df00602dac646566b63d73a42915c82232eb3de.tar.gz
Readmore.js-2df00602dac646566b63d73a42915c82232eb3de.tar.bz2
Refactor stylesheet embedding as new function
-rw-r--r--readmore.js42
1 files changed, 23 insertions, 19 deletions
diff --git a/readmore.js b/readmore.js
index bdb345e..54797c9 100644
--- a/readmore.js
+++ b/readmore.js
@@ -97,29 +97,17 @@
});
}, 100);
-
- function Readmore(element, options) {
- var $this = this;
-
- this.element = element;
-
- this.options = $.extend({}, defaults, options);
-
- $(this.element).data({
- 'defaultCollapsedHeight': this.options.collapsedHeight,
- 'heightMargin': this.options.heightMargin
- });
-
- if (! cssEmbedded[this.options.selector]) {
+ function embedCSS(options) {
+ if (! cssEmbedded[options.selector]) {
var styles = ' ';
- if (this.options.embedCSS) {
- styles += this.options.selector + ' + [data-readmore-js-toggle], ' + this.options.selector + '[data-readmore-js-section]{' + this.options.sectionCSS + '}'
+ if (options.embedCSS) {
+ styles += options.selector + ' + [data-readmore-js-toggle], ' + options.selector + '[data-readmore-js-section]{' + options.sectionCSS + '}'
}
// Include the transition CSS even if embedCSS is false
- styles += this.options.selector + '[data-readmore-js-section]{' +
- 'transition: height ' + this.options.speed + 'ms;' +
+ styles += options.selector + '[data-readmore-js-section]{' +
+ 'transition: height ' + options.speed + 'ms;' +
'overflow: hidden;' +
'}';
@@ -137,8 +125,24 @@
d.getElementsByTagName('head')[0].appendChild(css);
}(document, styles));
- cssEmbedded[this.options.selector] = true;
+ cssEmbedded[options.selector] = true;
}
+ }
+
+
+ function Readmore(element, options) {
+ var $this = this;
+
+ this.element = element;
+
+ this.options = $.extend({}, defaults, options);
+
+ $(this.element).data({
+ 'defaultCollapsedHeight': this.options.collapsedHeight,
+ 'heightMargin': this.options.heightMargin
+ });
+
+ embedCSS(this.options);
this._defaults = defaults;
this._name = readmore;