diff options
| author | Mark Christian | 2011-04-05 09:00:41 -0700 |
|---|---|---|
| committer | Mark Christian | 2011-04-05 09:00:41 -0700 |
| commit | 2021eccf173e30f4204ace8542cd1bafaea13c76 (patch) | |
| tree | 02023dcde04490c01c19c495d6a54e72767b4ec3 | |
| parent | bb9fac54096e4afe2f4f460fdb5129beca9e8a88 (diff) | |
| download | ffffallback-2021eccf173e30f4204ace8542cd1bafaea13c76.tar.bz2 | |
Support for setting font/styles on entire fallback body
| -rw-r--r-- | bookmarklet/ffffallback.js | 40 |
1 files changed, 23 insertions, 17 deletions
diff --git a/bookmarklet/ffffallback.js b/bookmarklet/ffffallback.js index 11f5650..11bcb60 100644 --- a/bookmarklet/ffffallback.js +++ b/bookmarklet/ffffallback.js @@ -230,7 +230,7 @@ $.each(cssObject, function(declarations, selector) { cssText += '#ffffallback-content-container ' + selector + ' {\n'; - cssText += 'color: magenta !important;'; + cssText += ' color: magenta !important;\n'; $.each(declarations, function(value, key) { if(key === 'x-more') { cssText += ' ' + value + ';\n'; @@ -313,26 +313,31 @@ window.addEventListener('resize', resizeController, false); resizeController(); - var fontClass, row; - $.each($.getAllFontsInUse(document.body), function(font) { - fontClass = $.getClassForFont(font); - row = $.createElementWithContent('li', '<b>' + font + '</b><input type="text" value="" placeholder="Fallback font" class="ffffallback-specify-font" data:font-class="' + fontClass + '" /><a href="#" class="ffffallback-disclosure"><span>▼</span></a><textarea class="ffffallback-more-values" placeholder="e.g. line-height: 1.75;"></textarea>'); + function addRowWithContent(content) { + var row = $.createElementWithContent('li', content); row.setAttribute('class', 'collapsed'); - (function(row) { - $.event(row.getElementsByClassName('ffffallback-disclosure')[0], 'click', function() { - if($.isClassOnElement('collapsed', row)) { - $.addClassToElement('expanded', row); - $.removeClassFromElement('collapsed', row); - } else { - $.addClassToElement('collapsed', row); - $.removeClassFromElement('expanded', row); - } - }); - })(row); + $.event(row.getElementsByClassName('ffffallback-disclosure')[0], 'click', function() { + if($.isClassOnElement('collapsed', row)) { + $.addClassToElement('expanded', row); + $.removeClassFromElement('collapsed', row); + } else { + $.addClassToElement('collapsed', row); + $.removeClassFromElement('expanded', row); + } + }); fontList.appendChild(row); + + return row; + } + + var fontClass, row; + $.each($.getAllFontsInUse(document.body), function(font) { + fontClass = $.getClassForFont(font); + addRowWithContent('<b>' + font + '</b><input type="text" value="" placeholder="Fallback font" class="ffffallback-specify-font" data:font-class="' + fontClass + '" /><a href="#" class="ffffallback-disclosure"><span>▼</span></a><textarea class="ffffallback-more-values" placeholder="e.g. line-height: 1.75;"></textarea>'); }); + addRowWithContent('<b>Entire fallback body</b><input type="text" value="" placeholder="Fallback font" class="ffffallback-specify-font" data:font-class="*" /><a href="#" class="ffffallback-disclosure"><span>▼</span></a><textarea class="ffffallback-more-values" placeholder="e.g. line-height: 1.75;"></textarea>'); $.event(document.getElementById('ffffallback-display-mode-original'), 'click', function() { $.removeClassFromElement('ffffallback-hide-original', document.body); @@ -378,12 +383,13 @@ } var moreTextArea = fontInput.parentNode.getElementsByClassName('ffffallback-more-values')[0]; var className = fontInput.getAttribute('data:font-class'); + var selector = (className === '*') ? '*' : ('.' + className); var value = $.trimString(fontInput.value); var moreValues = $.trimString(moreTextArea.value); if(!value && !moreValues) { return; } - cssDeclarations['.' + className] = { + cssDeclarations[selector] = { // TODO: 'font' instead of font-family? 'font-family': value, 'x-more': moreValues |
