From 4552ad2ff3a17f57a55bf41778b9264a55d8e06c Mon Sep 17 00:00:00 2001
From: Mottie
Date: Fri, 21 Aug 2015 22:32:37 -0500
Subject: Internalize all css & modify code to use css class names
---
index.html | 3 +-
js/printliminator.js | 346 +++++++++++++++++++--------------------------------
2 files changed, 132 insertions(+), 217 deletions(-)
diff --git a/index.html b/index.html
index 04ebcad..d0177f2 100644
--- a/index.html
+++ b/index.html
@@ -26,9 +26,8 @@
Here is the bookmarklet:
- Printliminator
+ Printliminator
< drag to your bookmarks bar
-
Video Demo
diff --git a/js/printliminator.js b/js/printliminator.js
index 035a53a..4cb5650 100644
--- a/js/printliminator.js
+++ b/js/printliminator.js
@@ -1,259 +1,175 @@
-function printlimator() {
- //remove conflicts with other javascript libraries
- var $ = jQuery;
+/* Printliminator */
+function csstricksPrintliminator( jQ ) {
+ // remove conflicts with other javascript libraries
+ var $ = jQ.noConflict(),
+ history = [],
+ dont = false,
+ // programmically added stylesheets
+ root = '', // '//css-tricks.com/examples/ThePrintliminator/';
+ styles = '' +
+ '._print_controls { position: fixed; top: 25px; right: 25px; width: 162px; height: 182px; z-index: 10000;' +
+ '-moz-user-select: none; -webkit-user-select: none; -ms-user-select: none;' +
+ 'background: url(' + root + 'images/printliminator2.png) no-repeat; }' +
+ '._print_controls_close { position: absolute; top: -20px; right: -20px; width: 33px; height: 33px;' +
+ 'background: url(' + root + 'images/printliminator2.png) -222px -3px no-repeat; }' +
+ '._print_controls_close:hover { background-position: -222px -39px; }' +
+ '._print_controls_remove_graphics, ._print_controls_print, ._print_controls_undo, ._print_controls_stylize {' +
+ 'position: absolute; height: 74px; width: 74px;' +
+ 'background: url(' + root + 'images/printliminator2.png) no-repeat; }' +
+ '._print_controls_remove_graphics { top: 6px; left: 6px; background-position: 0px -182px; }' +
+ '._print_controls_remove_graphics:hover { background-position: 0 -256px; }' +
+ '._print_controls_remove_graphics.active { background-position: 0 -330px; }' +
+ '._print_controls_print { top: 83px; left: 83px; background-position: -74px -182px; }' +
+ '._print_controls_print:hover { background-position: -74px -256px; }' +
+ '._print_controls_print.active { background-position: -74px -330px; }' +
+ '._print_controls_undo { top: 83px; left: 6px; background-position: -148px -182px; }' +
+ '._print_controls_undo:hover { background-position: -148px -256px; }' +
+ '._print_controls_undo.active { background-position: -148px -330px; }' +
+ '._print_controls_stylize { top: 6px; left: 83px; background-position: -222px -182px; }' +
+ '._print_controls_stylize:hover { background-position: -222px -256px; }' +
+ '._print_controls_stylize.active { background-position: -222px -330px; }' +
+ '._print_removed { display: none !important; }' +
+ '._printliminator_highlight { outline: 3px solid red; }' +
+ '@media print{ ._print_controls { display: none; } }',
- //like the hover function, but for mousedown state
- $.fn.active = function(fn1, fn2) {
- var el = this;
- $(el).mousedown(fn1);
- $(document).mouseup(function() {
- fn2.call(el);
- });
- return this;
- };
+ printstylesheet = '@media print, screen {' +
+ 'body { margin:0; padding:0; line-height: 1.4; word-spacing: 1.1pt; letter-spacing: 0.2pt;' +
+ 'font-family: Garamond, "Times New Roman", serif; color: #000; background: none; font-size: 12pt; }' +
+ 'h1, h2, h3, h4, h5, h6 { font-family: Helvetica, Arial, sans-serif; }' +
+ 'h1 { font-size: 19pt; }' +
+ 'h2 { font-size: 17pt; }' +
+ 'h3 { font-size: 15pt; }' +
+ 'h4, h5, h6 { font-size: 12pt; }' +
+ 'code { font: 10pt Courier, monospace; }' +
+ 'blockquote { margin: 1.3em; padding: 1em; font-size: 10pt; }' +
+ 'hr { background-color: #ccc; }' +
+ 'img { float: left; margin: 1em 1.5em 1.5em 0; }' +
+ 'a img { border: none; }' +
+ 'table { margin: 1px; text-align: left; border-collapse: collapse; }' +
+ 'th { border: 1px solid #333; font-weight: bold; }' +
+ 'td { border: 1px solid #333; }' +
+ 'th, td { padding: 4px 10px; }' +
+ 'tfoot { font-style: italic; }' +
+ 'caption { background: #fff; margin-bottom: 20px; text-align: left; }' +
+ 'thead {display: table-header-group; }' +
+ 'tr { page-break-inside: avoid; }' +
+ '} @media screen { body { padding: 20px; } }';
- var history = [];
+ $( '