Skip to content

Instantly share code, notes, and snippets.

@sapphiriq
Created May 11, 2012 12:12
Show Gist options
  • Save sapphiriq/2659265 to your computer and use it in GitHub Desktop.
Save sapphiriq/2659265 to your computer and use it in GitHub Desktop.

#Prerendering pages ( test ):

#Determine if your app is visible or not: document.addEventListener('visibilitychange', function(e) { console.log('hidden:' + document.hidden, 'state:' + document.visibilityState) }, false);

#http://davidwalsh.name/page-visibility // Adapted slightly from Sam Dutton // Set name of hidden property and visibility change event // since some browsers only offer vendor-prefixed support var hidden, state, visibilityChange; if (typeof document.hidden !== "undefined") { hidden = "hidden"; visibilityChange = "visibilitychange"; state = "visibilityState"; } else if (typeof document.mozHidden !== "undefined") { hidden = "mozHidden"; visibilityChange = "mozvisibilitychange"; state = "mozVisibilityState"; } else if (typeof document.msHidden !== "undefined") { hidden = "msHidden"; visibilityChange = "msvisibilitychange"; state = "msVisibilityState"; } else if (typeof document.webkitHidden !== "undefined") { hidden = "webkitHidden"; visibilityChange = "webkitvisibilitychange"; state = "webkitVisibilityState"; }

// Add a listener that constantly changes the title
document.addEventListener(visibilityChange, function() {
	document.title = document[state];
}, false);

// Set the initial value
document.title = document[state];

#navigator.onLine - know when you're all alone if (navigator.onLine) { console.log('ONLINE!'); } else { console.log('Connection flaky'); } window.addEventListener('online', function(e) { // Re-sync data with server. }, false);

window.addEventListener('offline', function(e) {
  // Queue up events for server.
}, false);

#Pasting files document.body.onpaste = function(e) { var items = e.clipboardData.items; for (var i = 0; i < items.length; ++i) { if (items[i].kind == 'file' && items[i].type == 'image/png') { var blob = items[i].getAsFile();

      var img = document.createElement('img');
      img.src = window.URL.createObjectURL(blob);

      document.body.appendChild(img);
    }
  }
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment