diff --git a/slimmer-bookmarklet.js b/slimmer-bookmarklet.js index 91f155f..3216268 100644 --- a/slimmer-bookmarklet.js +++ b/slimmer-bookmarklet.js @@ -1 +1 @@ -javascript:(()=%3E{const%20el=document.querySelector(%22body%22);const%20id=document.URL;const%20originalWidth=`__ayo__origininal-width-${id}__`;const%20originalMargin=`__ayo__origininal-margin-${id}__`;const%20toggle=`__ayo__slimmer-toggle-${id}__`;if(window[originalWidth]===undefined){window[originalWidth]=el.style.width;}if(window[originalMargin]===undefined){window[originalMargin]=el.style.margin;}if(!window[toggle]){el.style.width=%22700px%22;el.style.margin=%220%20auto%22;}else{el.style.width=window[originalWidth];el.style.margin=window[originalMargin]}window[toggle]=!window[toggle]})() \ No newline at end of file +javascript:(() => {const el=document.querySelector("body");const id=document.URL;const toggle=`__ayo__slimmer-toggle-${id}__`;const originalStyles=`__ayo__original-styles-${id}__`;if(window[originalStyles]===undefined)window[originalStyles]={width:el.style.width,margin:el.style.margin,overflowX:el.style.overflowX};if(!window[toggle]){el.style.width="700px";el.style.margin="0 auto";el.style.overflowX="auto"}else{el.style.width=window[originalStyles].width;el.style.margin=window[originalStyles].width;el.style.overflowX=window[originalStyles].overflowX}window[toggle]=!window[toggle]})() \ No newline at end of file diff --git a/slimmer.js b/slimmer.js index 41dbb76..f809c7e 100644 --- a/slimmer.js +++ b/slimmer.js @@ -1,16 +1,18 @@ +/** + * The bookmarklet will toggle between normal and slimmed width (700px) each time you click it. It preserves the original styles when switching back. + */ () => { const el = document.querySelector("body"); const id = document.URL; - const originalWidth = `__ayo__origininal-width-${id}__`; - const originalMargin = `__ayo__origininal-margin-${id}__`; const toggle = `__ayo__slimmer-toggle-${id}__`; + const originalStyles = `__ayo__original-styles-${id}__`; - if (window[originalWidth] === undefined) { - window[originalWidth] = el.style.width; - } - - if (window[originalMargin] === undefined) { - window[originalMargin] = el.style.margin; + if (window[originalStyles] === undefined) { + window[originalStyles] = { + width: el.style.width, + margin: el.style.margin, + overflowX: el.style.overflowX, + }; } if (!window[toggle]) { @@ -19,8 +21,9 @@ el.style.overflowX = "auto"; console.log({ toggle: window[toggle] }); } else { - el.style.width = window[originalWidth]; - el.style.margin = window[originalMargin]; + el.style.width = window[originalStyles].width; + el.style.margin = window[originalStyles].width; + el.style.overflowX = window[originalStyles].overflowX; } console.log({ toggle: window[toggle] });