Skip to content

Instantly share code, notes, and snippets.

@GingerBear
GingerBear / gist:641f36fc175def0ca7eba477f86d9ed0
Created March 8, 2017 19:57
inject js to ios that put catch
document.querySelector('#printLink').addEventListener('click', function() {
var iframe = document.querySelector('.printLink-iframe');
if (!iframe) {
iframe = document.createElement('div');
iframe.style.display = 'none';
iframe.classList.add('printLink-iframe');
}
iframe.innerHTML = '<iframe src="/printLink-iframe"></iframe>';
document.body.appendChild(iframe);
@GingerBear
GingerBear / gist:2c5eea66180deba994b5c93dc83c506c
Created March 3, 2017 16:29
build.gradle to make react-native-device-info and react-native-maps work together
compile(project(':react-native-device-info')){
exclude group: 'com.google.android.gms', module: 'play-services-gcm'
}
compile 'com.google.android.gms:play-services-gcm:9.8.0'
compile project(':react-native-maps')
This file has been truncated, but you can view the full file.
! function(t) {
function e(t) {
function e(e) {
if (o.onerror = o.onload = o.onreadystatechange = null, e) {
var i = s[t];
if (delete s[t], i)
for (; i.length;) i.shift().error.call(null, n)
}
}
var i = document.getElementsByTagName("head")[0],
@GingerBear
GingerBear / http.MD
Created November 1, 2016 14:09
http.MD

HTTP/0.9

  • only GET
  • only HTML format
  • TCP close after request
GET /index.html
<html>
 Hello World
function stripAccents(str) {
var reAccents = /[àáâãäçèéêëìíîïñòóôõöùúûüýÿÀÁÂÃÄÇÈÉÊËÌÍÎÏÑÒÓÔÕÖÙÚÛÜÝ]/g;
var replacements = 'aaaaaceeeeiiiinooooouuuuyyAAAAACEEEEIIIINOOOOOUUUUY';
return str.replace(reAccents, function (match) {
return replacements[reAccents.source.indexOf(match)];
});
};
@GingerBear
GingerBear / gist:2c80d82720c67cef9d66f7026ee92700
Created April 21, 2016 14:49
start local docker for php
docker run -d -p 80:80 -p 8880:8880 -p 443:443 -i -v '/Users/guanxiongding/Projects:/var/www' -t cores_dev
//= require vendor/slick.js
//= require vendor/photoswipe.js
//= require vendor/photoswipe-ui-default.js
function SlickZoom(options) {
options = options || {};
if (!(options.selector && options.item)) {
return console.error('selector and item required');
}
@GingerBear
GingerBear / csv_stringify_sync.js
Last active March 22, 2016 21:03
csv stringify sync
// from https://github.com/wdavidw/node-csv-stringify/blob/de22cdd8ffd07a02bd916e96a31678581eb33659/lib/index.js#L209
function stringify(line) {
var _line, column, columns, containsEscape, containsLinebreak, containsQuote, containsdelimiter, delimiter, escape, field, i, j, l, newLine, quote, ref, ref1, regexp, shouldQuote, value;
if (typeof line !== 'object') {
return line;
}
columns = null;
if (typeof columns === 'object' && columns !== null && !Array.isArray(columns)) {
columns = Object.keys(columns);
}
@GingerBear
GingerBear / classes.css
Created January 5, 2016 18:31
crystal blocked selectors
.mobile-ads-300-250,
.mobile-ad-300,
#dynamic_editorial_container,
.section_header.special,
.logosFooter,
.advertising,
.boxbanner,
.ad.articlebig,
.ember-view.ad-slot-wrapper,
#sharebar-modal-redesign,
@GingerBear
GingerBear / template.js
Created September 18, 2015 20:31
simple JavaScript template implementation, when we don't want import handlebar
// support if, liquid style filter
var orderInfoTemplate = '\
<div class="section">\
<h2>Order Status</h2>\
<div class="order-number">Order Number: <strong>{order_number}</strong></div>\
<div class="order-status">Status: <strong>{fulfillments[0].status}</strong></div>\
<div class="tracking-number">Tracking Number: {#if fulfillments[0].tracking_number}<strong><a href="{fulfillments[0].tracking_url}">{fulfillments[0].tracking_number}</a></strong> by {fulfillments[0].tracking_company}{/if}</div>\
</div>\
<div class="section">\