Skip to content

Instantly share code, notes, and snippets.

View jasonweng's full-sized avatar

jason jasonweng

  • The Plant
  • Hangzhou China
View GitHub Profile
// ----------------------------------------------------------
// A short snippet for detecting versions of IE in JavaScript
// without resorting to user-agent sniffing
// ----------------------------------------------------------
// If you're not in IE (or IE version is less than 5) then:
// ie === undefined
// If you're in IE (>=5) then you can determine which version:
// ie === 7; // IE7
// Thus, to detect IE:
// if (ie) {}
@jasonweng
jasonweng / README.md
Created December 9, 2011 07:21 — forked from chrisjacob/README.md
Node.js Install + CoffeeScript + LESS (+TextMate Bundles)
@jasonweng
jasonweng / array_distinct.js
Created December 19, 2011 14:00 — forked from fundon/array_distinct.js
array distinct , JavaScript
//http://lijing00333.wordpress.com/2011/02/08/%E6%95%B0%E7%BB%84%E5%8E%BB%E9%87%8D%E2%80%94%E2%80%94%E4%B8%80%E9%81%93%E5%89%8D%E7%AB%AF%E6%A0%A1%E6%8B%9B%E8%AF%95%E9%A2%98/
// [1,2,2,2,3,4,5].toString().match(/(\d)(?!.*,\1)/g);
Array.prototype.distinct = function() {
var o = {}, i = 0, l = this.length;
for (; i < l;) {
if (!o.hasOwnProperty(this[i])) {
o[this[i++]] = 1;
} else {
this.splice(i, 1);
// as of 1.4.2 the mobile safari reports wrong values on offset()
// http://dev.jquery.com/ticket/6446
// remove once it's fixed
if ( /webkit.*mobile/i.test(navigator.userAgent)) {
(function($) {
$.fn.offsetOld = $.fn.offset;
$.fn.offset = function() {
var result = this.offsetOld();
result.top -= window.scrollY;
result.left -= window.scrollX;
var RegCheck = {
/**
* 正規表示式
*/
_reg:{
// Email正規表示式
email: /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/,
// 非「英文大小寫」和「數字」出現過一次
not_en_digital_least1: /[^a-zA-Z0-9]+/,
// 「英文大小寫」和「數字」各出現過一次(a1,b2...)
@jasonweng
jasonweng / Sortable.jsx
Created January 14, 2017 02:45 — forked from superKalo/ Sortable.jsx
How to use jQuery UI with React JS? You can use this approach to integrate almost any jQuery plugin! Full details and explanation here: http://stackoverflow.com/a/40350880/1333836
class Sortable extends React.Component {
componentDidMount() {
// Every React component has a function that exposes the
// underlying DOM node that it is wrapping. We can use that
// DOM node, pass it to jQuery and initialize the plugin.
// You'll find that many jQuery plugins follow this same pattern
// and you'll be able to pass the component DOM node to jQuery
// and call the plugin function.