Skip to content

Instantly share code, notes, and snippets.


Jade zjhiphop

View GitHub Profile
View InfiniteListView.js
Infinite List View
creates <ul> with triggers for infinite scrolling
@author Kevin Jantzer, Blacktone Audio Inc.
@since 2012-11-06
USE - listen for:

##Chrome Packaged Apps


Introduced at Google I/O 2012, Chrome packaged apps are a new way to develop apps that are running 'natively' within Chrome on the desktop as well as on Chrome mobile in the near future. I'm currently in the middle of a project where I develop a Chrome packaged app and in this article I would like to share my experience with the development of packaged apps.

Please note: This article should give you a basic insight of topics that I think are helpful to know for developing packaged apps. Furthermore I will give links to each topic, so you can dive deeper into that specific topic if you want to. It's not the goal of this article to act as a complete introduction to Chrome packaged apps, for a much more detailed overview of packaged apps development, please look at the official packaged app documentation.

What are Chrome Packaged Apps

Chrome packaged apps are applic

View log.R
# load data:
log <- data.frame(Date = c("2013/05/25","2013/05/28","2013/05/31","2013/06/01","2013/06/02","2013/06/05","2013/06/07"),
Quantity = c(9,1,15,4,5,17,18))
# convert date variable from factor to date format:
View example-r-markdown.rmd
This post examines the features of [R Markdown](
using [knitr]( in Rstudio 0.96.
This combination of tools provides an exciting improvement in usability for
[reproducible analysis](
Specifically, this post
(1) discusses getting started with R Markdown and `knitr` in Rstudio 0.96;
(2) provides a basic example of producing console output and plots using R Markdown;
(3) highlights several code chunk options such as caching and controlling how input and output is displayed;
(4) demonstrates use of standard Markdown notation as well as the extended features of formulas and tables; and
(5) discusses the implications of R Markdown.


Developing Chrome Extensions is REALLY fun if you are a Front End engineer. If you, however, struggle with visualizing the architecture of an application, then developing a Chrome Extension is going to bite your butt multiple times due the amount of excessive components the extension works with. Here are some pointers in how to start, what problems I encounter and how to avoid them.

Note: I'm not covering chrome package apps, which although similar, work in a different way. I also won't cover the page options api neither the new brand event pages. What I explain covers most basic chrome applications and should be enough to get you started.

Table of Contents

  1. Understand the Chrome Architecture
  2. Understand the Tabs-Extension Relationship
  3. Picking the right interface for the job
zjhiphop / programme jokes
Last active Aug 29, 2015
programme jokes
View programme jokes
def protecter():
sb = []
sb.append(" _ooOoo_\n")
sb.append(" o8888888o\n")
sb.append(" 88\" . \"88\n")
sb.append(" (| -_- |)\n")
sb.append(" O\\ = /O\n")
sb.append(" ____/`---'\\____\n")
sb.append(" .' \\\\| |// `.\n")
sb.append(" / \\\\||| : |||// \\ \n")
zjhiphop / uri.js
Last active Aug 29, 2015 — forked from jlong/uri.js
View uri.js
var parser = document.createElement('a');
parser.href = "";
parser.protocol; // => "http:"
parser.hostname; // => ""
parser.port; // => "3000"
parser.pathname; // => "/pathname/"; // => "?search=test"
parser.hash; // => "#hash"; // => ""
zjhiphop / jquery-each-context.js
Last active Aug 29, 2015
jquery-each-context issue
View jquery-each-context.js
function test() {
var a = 1;
$('span').each(function() {
this.innerHTML = a; // 'a' can not accessed in this scope
View callstack.js
* 打印 JavaScript 函数调用堆栈
function printCallStack() {
var i = 0;
var fun = arguments.callee;
do {
fun = fun.arguments.callee.caller;
console.log(++i + ': ' + fun);
} while (fun);
View regex-weburl.js
// Regular Expression for URL validation
// Author: Diego Perini
// Updated: 2010/12/05
// License: MIT
// Copyright (c) 2010-2013 Diego Perini (
// Permission is hereby granted, free of charge, to any person