转自 http://www.webhek.com/you-do-not-need-jquery

AJAX

JSON

JQUERY

  1. $.getJSON('/my/url', function(data) {
  2. });

谷歌浏览器,火狐浏览器,IE8+

  1. var request = new XMLHttpRequest();
  2. request.open('GET', '/my/url', true);
  3. request.onreadystatechange = function() {
  4. if (this.readyState === 4) {
  5. if (this.status >= 200 && this.status < 400) {
  6. // Success!
  7. var data = JSON.parse(this.responseText);
  8. } else {
  9. // Error :(
  10. }
  11. }
  12. };
  13. request.send();
  14. request = null;

谷歌浏览器,火狐浏览器,IE9+

  1. var request = new XMLHttpRequest();
  2. request.open('GET', '/my/url', true);
  3. request.onload = function() {
  4. if (request.status >= 200 && request.status < 400) {
  5. // Success!
  6. var data = JSON.parse(request.responseText);
  7. } else {
  8. // We reached our target server, but it returned an error
  9. }
  10. };
  11. request.onerror = function() {
  12. // There was a connection error of some sort
  13. };
  14. request.send();

谷歌浏览器,火狐浏览器,IE10+

  1. var request = new XMLHttpRequest();
  2. request.open('GET', '/my/url', true);
  3. request.onload = function() {
  4. if (this.status >= 200 && this.status < 400) {
  5. // Success!
  6. var data = JSON.parse(this.response);
  7. } else {
  8. // We reached our target server, but it returned an error
  9. }
  10. };
  11. request.onerror = function() {
  12. // There was a connection error of some sort
  13. };
  14. request.send();

Post

JQUERY

  1. $.ajax({
  2. type: 'POST',
  3. url: '/my/url',
  4. data: data
  5. });

谷歌浏览器,火狐浏览器,IE8+

  1. var request = new XMLHttpRequest();
  2. request.open('POST', '/my/url', true);
  3. request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
  4. request.send(data);

Request

JQUERY

  1. $.ajax({
  2. type: 'GET',
  3. url: '/my/url',
  4. success: function(resp) {
  5. },
  6. error: function() {
  7. }
  8. });

谷歌浏览器,火狐浏览器,IE8+

  1. var request = new XMLHttpRequest();
  2. request.open('GET', '/my/url', true);
  3. request.onreadystatechange = function() {
  4. if (this.readyState === 4) {
  5. if (this.status >= 200 && this.status < 400) {
  6. // Success!
  7. var resp = this.responseText;
  8. } else {
  9. // Error :(
  10. }
  11. }
  12. };
  13. request.send();
  14. request = null;

谷歌浏览器,火狐浏览器,IE9+

  1. var request = new XMLHttpRequest();
  2. request.open('GET', '/my/url', true);
  3. request.onload = function() {
  4. if (request.status >= 200 && request.status < 400) {
  5. // Success!
  6. var resp = request.responseText;
  7. } else {
  8. // We reached our target server, but it returned an error
  9. }
  10. };
  11. request.onerror = function() {
  12. // There was a connection error of some sort
  13. };
  14. request.send();

谷歌浏览器,火狐浏览器,IE10+

  1. var request = new XMLHttpRequest();
  2. request.open('GET', '/my/url', true);
  3. request.onload = function() {
  4. if (this.status >= 200 && this.status < 400) {
  5. // Success!
  6. var resp = this.response;
  7. } else {
  8. // We reached our target server, but it returned an error
  9. }
  10. };
  11. request.onerror = function() {
  12. // There was a connection error of some sort
  13. };
  14. request.send();

特效

淡入淡出

JQUERY

  1. $(el).fadeIn();

谷歌浏览器,火狐浏览器,IE8+

  1. function fadeIn(el) {
  2. var opacity = 0;
  3. el.style.opacity = 0;
  4. el.style.filter = '';
  5. var last = +new Date();
  6. var tick = function() {
  7. opacity += (new Date() - last) / 400;
  8. el.style.opacity = opacity;
  9. el.style.filter = 'alpha(opacity=' + (100 * opacity)|0 + ')';
  10. last = +new Date();
  11. if (opacity < 1) {
  12. (window.requestAnimationFrame && requestAnimationFrame(tick)) || setTimeout(tick, 16);
  13. }
  14. };
  15. tick();
  16. }
  17. fadeIn(el);

谷歌浏览器,火狐浏览器,IE9+

  1. function fadeIn(el) {
  2. el.style.opacity = 0;
  3. var last = +new Date();
  4. var tick = function() {
  5. el.style.opacity = +el.style.opacity + (new Date() - last) / 400;
  6. last = +new Date();
  7. if (+el.style.opacity < 1) {
  8. (window.requestAnimationFrame && requestAnimationFrame(tick)) || setTimeout(tick, 16)
  9. }
  10. };
  11. tick();
  12. }
  13. fadeIn(el);

谷歌浏览器,火狐浏览器,IE10+

  1. el.classList.add('show');
  2. el.classList.remove('hide');
  1. .show {
  2. transition: opacity 400ms;
  3. }
  4. .hide {
  5. opacity: 0;
  6. }

Hide

JQUERY

  1. $(el).hide();

谷歌浏览器,火狐浏览器,IE8+

  1. el.style.display = 'none';

Show

JQUERY

  1. $(el).show();

谷歌浏览器,火狐浏览器,IE8+

  1. el.style.display = '';

元素操作

Add Class

JQUERY

  1. $(el).addClass(className);

谷歌浏览器,火狐浏览器,IE8+

  1. if (el.classList)
  2. el.classList.add(className);
  3. else
  4. el.className += ' ' + className;

谷歌浏览器,火狐浏览器,IE10+

  1. el.classList.add(className);

After

JQUERY

  1. $(el).after(htmlString);

谷歌浏览器,火狐浏览器,IE8+

  1. el.insertAdjacentHTML('afterend', htmlString);

Append

JQUERY

  1. $(parent).append(el);

谷歌浏览器,火狐浏览器,IE8+

  1. parent.appendChild(el);

Before

JQUERY

  1. $(el).before(htmlString);

谷歌浏览器,火狐浏览器,IE8+

  1. el.insertAdjacentHTML('beforebegin', htmlString);

Children

JQUERY

  1. $(el).children();

谷歌浏览器,火狐浏览器,IE8+

  1. var children = [];
  2. for (var i = el.children.length; i--;) {
  3. // Skip comment nodes on IE8
  4. if (el.children[i].nodeType != 8)
  5. children.unshift(el.children[i]);
  6. }

谷歌浏览器,火狐浏览器,IE9+

  1. el.children

Clone

JQUERY

  1. $(el).clone();

谷歌浏览器,火狐浏览器,IE8+

  1. el.cloneNode(true);

Contains

JQUERY

  1. $.contains(el, child);

谷歌浏览器,火狐浏览器,IE8+

  1. el !== child && el.contains(child);

Contains Selector

JQUERY

  1. $(el).find(selector).length;

谷歌浏览器,火狐浏览器,IE8+

  1. el.querySelector(selector) !== null

Each

JQUERY

  1. $(selector).each(function(i, el){
  2. });

谷歌浏览器,火狐浏览器,IE8+

  1. function forEachElement(selector, fn) {
  2. var elements = document.querySelectorAll(selector);
  3. for (var i = 0; i < elements.length; i++)
  4. fn(elements[i], i);
  5. }
  6. forEachElement(selector, function(el, i){
  7. });

谷歌浏览器,火狐浏览器,IE9+

  1. var elements = document.querySelectorAll(selector);
  2. Array.prototype.forEach.call(elements, function(el, i){
  3. });

Empty

JQUERY

  1. $(el).empty();

谷歌浏览器,火狐浏览器,IE8+

  1. while(el.firstChild)
  2. el.removeChild(el.firstChild);

谷歌浏览器,火狐浏览器,IE9+

  1. el.innerHTML = '';

过滤

JQUERY

  1. $(selector).filter(filterFn);

谷歌浏览器,火狐浏览器,IE8+

  1. function filter(selector, filterFn) {
  2. var elements = document.querySelectorAll(selector);
  3. var out = [];
  4. for (var i = elements.length; i--;) {
  5. if (filterFn(elements[i]))
  6. out.unshift(elements[i]);
  7. }
  8. return out;
  9. }
  10. filter(selector, filterFn);

谷歌浏览器,火狐浏览器,IE9+

  1. Array.prototype.filter.call(document.querySelectorAll(selector), filterFn);

查找子元素

JQUERY

  1. $(el).find(selector);

谷歌浏览器,火狐浏览器,IE8+

  1. el.querySelectorAll(selector);

查找

JQUERY

  1. $('.my #awesome selector');

谷歌浏览器,火狐浏览器,IE8+

  1. document.querySelectorAll('.my #awesome selector');

获取属性值

JQUERY

  1. $(el).attr('tabindex');

谷歌浏览器,火狐浏览器,IE8+

  1. el.getAttribute('tabindex');

获取Html内容

JQUERY

  1. $(el).html();

谷歌浏览器,火狐浏览器,IE8+

  1. el.innerHTML

获取外层Html内容

JQUERY

  1. $('<div>').append($(el).clone()).html();

谷歌浏览器,火狐浏览器,IE8+

  1. el.outerHTML

获取CSS样式

JQUERY

  1. $(el).css(ruleName);

谷歌浏览器,火狐浏览器,IE8+

  1. // Varies based on the properties being retrieved, some can be retrieved from el.currentStyle
  2. // https://github.com/jonathantneal/Polyfills-for-IE8/blob/master/getComputedStyle.js

谷歌浏览器,火狐浏览器,IE9+

  1. getComputedStyle(el)[ruleName];

获取文本内容

JQUERY

  1. $(el).text();

谷歌浏览器,火狐浏览器,IE8+

  1. el.textContent || el.innerText

谷歌浏览器,火狐浏览器,IE9+

  1. el.textContent

Has Class

JQUERY

  1. $(el).hasClass(className);

谷歌浏览器,火狐浏览器,IE8+

  1. if (el.classList)
  2. el.classList.contains(className);
  3. else
  4. new RegExp('(^| )' + className + '( |$)', 'gi').test(el.className);

谷歌浏览器,火狐浏览器,IE10+

  1. el.classList.contains(className);

元素比较

JQUERY

  1. $(el).is($(otherEl));

谷歌浏览器,火狐浏览器,IE8+

  1. el === otherEl

比较类名

JQUERY

  1. $(el).is('.my-class');

谷歌浏览器,火狐浏览器,IE8+

  1. var matches = function(el, selector) {
  2. var _matches = (el.matches || el.matchesSelector || el.msMatchesSelector || el.mozMatchesSelector || el.webkitMatchesSelector || el.oMatchesSelector);
  3. if (_matches) {
  4. return _matches.call(el, selector);
  5. } else {
  6. var nodes = el.parentNode.querySelectorAll(selector);
  7. for (var i = nodes.length; i--;) {
  8. if (nodes[i] === el)
  9. return true;
  10. }
  11. return false;
  12. }
  13. };
  14. matches(el, '.my-class');

谷歌浏览器,火狐浏览器,IE9+

  1. var matches = function(el, selector) {
  2. return (el.matches || el.matchesSelector || el.msMatchesSelector || el.mozMatchesSelector || el.webkitMatchesSelector || el.oMatchesSelector).call(el, selector);
  3. };
  4. matches(el, '.my-class');

Next

JQUERY

  1. $(el).next();

谷歌浏览器,火狐浏览器,IE8+

  1. // nextSibling can include text nodes
  2. function nextElementSibling(el) {
  3. do { el = el.nextSibling; } while ( el && el.nodeType !== 1 );
  4. return el;
  5. }
  6. el.nextElementSibling || nextElementSibling(el);

谷歌浏览器,火狐浏览器,IE9+

  1. el.nextElementSibling

Offset

JQUERY

  1. $(el).offset();

谷歌浏览器,火狐浏览器,IE8+

  1. var rect = el.getBoundingClientRect()
  2. {
  3. top: rect.top + document.body.scrollTop,
  4. left: rect.left + document.body.scrollLeft
  5. }

Offset Parent

JQUERY

  1. $(el).offsetParent();

谷歌浏览器,火狐浏览器,IE8+

  1. el.offsetParent || el

Outer Height

JQUERY

  1. $(el).outerHeight();

谷歌浏览器,火狐浏览器,IE8+

  1. el.offsetHeight

Outer Height With Margin

JQUERY

  1. $(el).outerHeight(true);

谷歌浏览器,火狐浏览器,IE8+

  1. function outerHeight(el) {
  2. var height = el.offsetHeight;
  3. var style = el.currentStyle || getComputedStyle(el);
  4. height += parseInt(style.marginTop) + parseInt(style.marginBottom);
  5. return height;
  6. }
  7. outerHeight(el);

谷歌浏览器,火狐浏览器,IE9+

  1. function outerHeight(el) {
  2. var height = el.offsetHeight;
  3. var style = getComputedStyle(el);
  4. height += parseInt(style.marginTop) + parseInt(style.marginBottom);
  5. return height;
  6. }
  7. outerHeight(el);

Outer Width With Margin

JQUERY

  1. $(el).outerWidth(true);

谷歌浏览器,火狐浏览器,IE8+

  1. function outerWidth(el) {
  2. var width = el.offsetWidth;
  3. var style = el.currentStyle || getComputedStyle(el);
  4. width += parseInt(style.marginLeft) + parseInt(style.marginRight);
  5. return width;
  6. }
  7. outerWidth(el);

谷歌浏览器,火狐浏览器,IE9+

  1. function outerWidth(el) {
  2. var width = el.offsetWidth;
  3. var style = getComputedStyle(el);
  4. width += parseInt(style.marginLeft) + parseInt(style.marginRight);
  5. return width;
  6. }
  7. outerWidth(el);

Outer Width

JQUERY

  1. $(el).outerWidth();

谷歌浏览器,火狐浏览器,IE8+

  1. el.offsetWidth

Parent

JQUERY

  1. $(el).parent();

谷歌浏览器,火狐浏览器,IE8+

  1. el.parentNode

Position

JQUERY

  1. $(el).position();

谷歌浏览器,火狐浏览器,IE8+

  1. {left: el.offsetLeft, top: el.offsetTop}

Position Relative To Viewport

JQUERY

  1. var offset = el.offset();
  2. {
  3. top: offset.top - document.body.scrollTop,
  4. left: offset.left - document.body.scrollLeft
  5. }

谷歌浏览器,火狐浏览器,IE8+

  1. el.getBoundingClientRect()

Prepend

JQUERY

  1. $(parent).prepend(el);

谷歌浏览器,火狐浏览器,IE8+

  1. parent.insertBefore(el, parent.firstChild);

Prev

JQUERY

  1. $(el).prev();

谷歌浏览器,火狐浏览器,IE8+

  1. // prevSibling can include text nodes
  2. function previousElementSibling(el) {
  3. do { el = el.previousSibling; } while ( el && el.nodeType !== 1 );
  4. return el;
  5. }
  6. el.previousElementSibling || previousElementSibling(el);

谷歌浏览器,火狐浏览器,IE9+

  1. el.previousElementSibling

Remove

JQUERY

  1. $(el).remove();

谷歌浏览器,火狐浏览器,IE8+

  1. el.parentNode.removeChild(el);

Remove Class

JQUERY

  1. $(el).removeClass(className);

谷歌浏览器,火狐浏览器,IE8+

  1. if (el.classList)
  2. el.classList.remove(className);
  3. else
  4. el.className = el.className.replace(new RegExp('(^|\\b)' + className.split(' ').join('|') + '(\\b|$)', 'gi'), ' ');

谷歌浏览器,火狐浏览器,IE10+

  1. el.classList.remove(className);

Replace From Html

JQUERY

  1. $(el).replaceWith(string);

谷歌浏览器,火狐浏览器,IE8+

  1. el.outerHTML = string;

Set Attributes

JQUERY

  1. $(el).attr('tabindex', 3);

谷歌浏览器,火狐浏览器,IE8+

  1. el.setAttribute('tabindex', 3);

Set Html

JQUERY

  1. $(el).html(string);

谷歌浏览器,火狐浏览器,IE8+

  1. el.innerHTML = string;

Set Style

JQUERY

  1. $(el).css('border-width', '20px');

谷歌浏览器,火狐浏览器,IE8+

  1. // Use a class if possible
  2. el.style.borderWidth = '20px';

Set Text

JQUERY

  1. $(el).text(string);

谷歌浏览器,火狐浏览器,IE8+

  1. if (el.textContent !== undefined)
  2. el.textContent = string;
  3. else
  4. el.innerText = string;

谷歌浏览器,火狐浏览器,IE9+

  1. el.textContent = string;

Siblings

JQUERY

  1. $(el).siblings();

谷歌浏览器,火狐浏览器,IE8+

  1. var siblings = Array.prototype.slice.call(el.parentNode.children);
  2. for (var i = siblings.length; i--;) {
  3. if (siblings[i] === el) {
  4. siblings.splice(i, 1);
  5. break;
  6. }
  7. }

谷歌浏览器,火狐浏览器,IE9+

  1. Array.prototype.filter.call(el.parentNode.children, function(child){
  2. return child !== el;
  3. });

Toggle Class

JQUERY

  1. $(el).toggleClass(className);

谷歌浏览器,火狐浏览器,IE8+

  1. if (el.classList) {
  2. el.classList.toggle(className);
  3. } else {
  4. var classes = el.className.split(' ');
  5. var existingIndex = -1;
  6. for (var i = classes.length; i--;) {
  7. if (classes[i] === className)
  8. existingIndex = i;
  9. }
  10. if (existingIndex >= 0)
  11. classes.splice(existingIndex, 1);
  12. else
  13. classes.push(className);
  14. el.className = classes.join(' ');
  15. }

谷歌浏览器,火狐浏览器,IE9+

  1. if (el.classList) {
  2. el.classList.toggle(className);
  3. } else {
  4. var classes = el.className.split(' ');
  5. var existingIndex = classes.indexOf(className);
  6. if (existingIndex >= 0)
  7. classes.splice(existingIndex, 1);
  8. else
  9. classes.push(className);
  10. el.className = classes.join(' ');
  11. }

谷歌浏览器,火狐浏览器,IE10+

  1. el.classList.toggle(className);

事件

Off

JQUERY

  1. $(el).off(eventName, eventHandler);

谷歌浏览器,火狐浏览器,IE8+

  1. function removeEventListener(el, eventName, handler) {
  2. if (el.removeEventListener)
  3. el.removeEventListener(eventName, handler);
  4. else
  5. el.detachEvent('on' + eventName, handler);
  6. }
  7. removeEventListener(el, eventName, handler);

谷歌浏览器,火狐浏览器,IE9+

  1. el.removeEventListener(eventName, eventHandler);

On

JQUERY

  1. $(el).on(eventName, eventHandler);

谷歌浏览器,火狐浏览器,IE8+

  1. function addEventListener(el, eventName, handler) {
  2. if (el.addEventListener) {
  3. el.addEventListener(eventName, handler);
  4. } else {
  5. el.attachEvent('on' + eventName, function(){
  6. handler.call(el);
  7. });
  8. }
  9. }
  10. addEventListener(el, eventName, handler);

谷歌浏览器,火狐浏览器,IE9+

  1. el.addEventListener(eventName, eventHandler);

Ready

JQUERY

  1. $(document).ready(function(){
  2. });

谷歌浏览器,火狐浏览器,IE8+

  1. function ready(fn) {
  2. if (document.readyState != 'loading'){
  3. fn();
  4. } else if (document.addEventListener) {
  5. document.addEventListener('DOMContentLoaded', fn);
  6. } else {
  7. document.attachEvent('onreadystatechange', function() {
  8. if (document.readyState != 'loading')
  9. fn();
  10. });
  11. }
  12. }

谷歌浏览器,火狐浏览器,IE9+

  1. function ready(fn) {
  2. if (document.readyState != 'loading'){
  3. fn();
  4. } else {
  5. document.addEventListener('DOMContentLoaded', fn);
  6. }
  7. }

指定事件触发

JQUERY

  1. $(el).trigger('my-event', {some: 'data'});

谷歌浏览器,火狐浏览器,IE8+

  1. // Custom events are not natively supported, so you have to hijack a random
  2. // event.
  3. //
  4. // Just use jQuery.

谷歌浏览器,火狐浏览器,IE9+

  1. if (window.CustomEvent) {
  2. var event = new CustomEvent('my-event', {detail: {some: 'data'}});
  3. } else {
  4. var event = document.createEvent('CustomEvent');
  5. event.initCustomEvent('my-event', true, true, {some: 'data'});
  6. }
  7. el.dispatchEvent(event);

Trigger Native

JQUERY

  1. $(el).trigger('change');

谷歌浏览器,火狐浏览器,IE8+

  1. if (document.createEvent) {
  2. var event = document.createEvent('HTMLEvents');
  3. event.initEvent('change', true, false);
  4. el.dispatchEvent(event);
  5. } else {
  6. el.fireEvent('onchange');
  7. }

谷歌浏览器,火狐浏览器,IE9+

  1. // For a full list of event types: https://developer.mozilla.org/en-US/docs/Web/API/document.createEvent
  2. var event = document.createEvent('HTMLEvents');
  3. event.initEvent('change', true, false);
  4. el.dispatchEvent(event);

技巧

Array Each

JQUERY

  1. $.each(array, function(i, item){
  2. });

谷歌浏览器,火狐浏览器,IE8+

  1. function forEach(array, fn) {
  2. for (i = 0; i < array.length; i++)
  3. fn(array[i], i);
  4. }
  5. forEach(array, function(item, i){
  6. });

谷歌浏览器,火狐浏览器,IE9+

  1. array.forEach(function(item, i){
  2. });

深度扩展

JQUERY

  1. $.extend(true, {}, objA, objB);

谷歌浏览器,火狐浏览器,IE8+

  1. var deepExtend = function(out) {
  2. out = out || {};
  3. for (var i = 1; i < arguments.length; i++) {
  4. var obj = arguments[i];
  5. if (!obj)
  6. continue;
  7. for (var key in obj) {
  8. if (obj.hasOwnProperty(key)) {
  9. if (typeof obj[key] === 'object')
  10. deepExtend(out[key], obj[key]);
  11. else
  12. out[key] = obj[key];
  13. }
  14. }
  15. }
  16. return out;
  17. };
  18. deepExtend({}, objA, objB);

Bind

JQUERY

  1. $.proxy(fn, context);

谷歌浏览器,火狐浏览器,IE8+

  1. fn.apply(context, arguments);

谷歌浏览器,火狐浏览器,IE9+

  1. fn.bind(context);

jQuery

  1. $.extend({}, objA, objB);

谷歌浏览器,火狐浏览器,IE8+

  1. var extend = function(out) {
  2. out = out || {};
  3. for (var i = 1; i < arguments.length; i++) {
  4. if (!arguments[i])
  5. continue;
  6. for (var key in arguments[i]) {
  7. if (arguments[i].hasOwnProperty(key))
  8. out[key] = arguments[i][key];
  9. }
  10. }
  11. return out;
  12. };
  13. extend({}, objA, objB);

Index Of

JQUERY

  1. $.inArray(item, array);

谷歌浏览器,火狐浏览器,IE8+

  1. function indexOf(array, item) {
  2. for (var i = 0; i < array.length; i++) {
  3. if (array[i] === item)
  4. return i;
  5. }
  6. return -1;
  7. }
  8. indexOf(array, item);

谷歌浏览器,火狐浏览器,IE9+

  1. array.indexOf(item);

Is Array

JQUERY

  1. $.isArray(arr);

谷歌浏览器,火狐浏览器,IE8+

  1. isArray = Array.isArray || function(arr) {
  2. return Object.prototype.toString.call(arr) == '[object Array]';
  3. }
  4. isArray(arr);

谷歌浏览器,火狐浏览器,IE9+

  1. Array.isArray(arr);

Map

JQUERY

  1. $.map(array, function(value, index){
  2. });

谷歌浏览器,火狐浏览器,IE8+

  1. function map(arr, fn) {
  2. var results = [];
  3. for (var i = 0; i < arr.length; i++)
  4. results.push(fn(arr[i], i));
  5. return results;
  6. }
  7. map(array, function(value, index){
  8. });

谷歌浏览器,火狐浏览器,IE9+

  1. array.map(function(value, index){
  2. });

Now

JQUERY

  1. $.now();

谷歌浏览器,火狐浏览器,IE8+

  1. new Date().getTime();

谷歌浏览器,火狐浏览器,IE9+

  1. Date.now();

Parse Html

JQUERY

  1. $.parseHTML(htmlString);

谷歌浏览器,火狐浏览器,IE8+

  1. var parseHTML = function(str) {
  2. var el = document.createElement('div');
  3. el.innerHTML = str;
  4. return el.children;
  5. };
  6. parseHTML(htmlString);

谷歌浏览器,火狐浏览器,IE9+

  1. var parseHTML = function(str) {
  2. var tmp = document.implementation.createHTMLDocument();
  3. tmp.body.innerHTML = str;
  4. return tmp.body.children;
  5. };
  6. parseHTML(htmlString);

解析 Json

JQUERY

  1. $.parseJSON(string);

谷歌浏览器,火狐浏览器,IE8+

  1. JSON.parse(string);

Trim

JQUERY

  1. $.trim(string);

谷歌浏览器,火狐浏览器,IE8+

  1. string.replace(/^\s+|\s+$/g, '');

谷歌浏览器,火狐浏览器,IE9+

  1. string.trim();

Type

JQUERY

  1. $.type(obj);

谷歌浏览器,火狐浏览器,IE8+

  1. Object.prototype.toString.call(obj) .replace(/^\[object (.+)\]$/, "$1") .toLowerCase();
  1. alan:good, thank you!
  2. ioy:总结的不错

Jquery 对比 Javascript的更多相关文章

  1. 节点的创建--对比jQuery与JavaScript 方法

    一.  创建节点: 节点是DOM结构的基础,根据DOM规范,节点是一个很宽泛的概念,包含元素.属性.文本.文档和注释.但在实际开发中,要动态创建内容,主要操作的节点包括元素.属性和文本. 1.需求:创 ...

  2. 对比JQuery与JavaScript

    JavaScript 是一种脚本语言,主要用在浏览器中,实现对网页的文档对象的操作和一些用户交互动作的处理.而 jQuery 则是 JavaScript 的一个代码库(或习惯性叫类库),它将一些在 J ...

  3. 原生js 与 jQuery对比

    1.原生JS与jQuery操作DOM对比  :   https://www.cnblogs.com/QianBoy/p/7868379.html 2.比较jQuery与JavaScript的不同功能实 ...

  4. jQuery? 回归JavaScript原生API

    如今技术日新月异,各类框架库也是层次不穷.即便当年漫山红遍的JQuery(让开发者write less, do more,So Perfect!!)如今也有被替代的大势.但JS原生API写法依旧:并且 ...

  5. JQuery笔记:JQuery和JavaScript的联系与区别

    来源:http://www.ido321.com/1019.html ps:LZ觉得这个标题有点大了,超出了能力范围,不喜勿碰.目前只记录LZ能力范围内的,日后持续补充. 一.JQuery对象和DOM ...

  6. 使用Javascript/jQuery将javascript对象转换为json格式数据 - 海涛的CSDN博客 - 博客频道 - CSDN.NET

    body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...

  7. 【转载】Asp.Net中使用基于jQuery的javascript前台模版引擎JTemplate

    JTemplate是基于jQuery的开源的前端模版引擎,在Jtemplate模板中可以使用if判断.foreach循环.for循环等操作,使用Jtemplate模板优点在于ajax局部刷新界面时候不 ...

  8. jQuery 是javascript的一个库(常用插件、处理器)

    jQuery校验官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuery就是javascript的一个库,把我 ...

  9. Eclipse添加Jquery和javascript的智能提示

    使用Eclipse写Jquery和Javascript代码的时候,是没有智能提示的.我们可以使用一个插件来解决这个问题. 安装完成后,Eclipse会自动重启.重启之后,我们在项目上右键,   根据自 ...

随机推荐

  1. HDU OJ Digital Roots 题目1013

     /*Digital Roots Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  2. 【Python】Django数据模型、级联删除、级联更新、ER图导出等

    在本文中,我们将向读者详细介绍如何在更新和删除父表数据的同时,触发有关子表数据的级联更新和删除操作.您将看到当使用InnoDB表的时候,借助于外键约束就可以轻松搞定这一过程. 一.利用外键约束更新并删 ...

  3. SQL-重复记录查询的几种方法

    1.查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from ...

  4. simple-libfm-example-part1

    原文:https://thierrysilbermann.wordpress.com/2015/02/11/simple-libfm-example-part1/ I often get email ...

  5. Objective-C中NSString与int和float的相互转换

    NSString *tempA = @"123"; NSString *tempB = @"456"; 1,字符串拼接 NSString *newString ...

  6. 导入maven项目出现 Unsupported IClasspathEntry kind=4

    Unsupported IClasspathEntry kind=4 这个异常会导致项目无法使用spring ide启动 来自:http://blog.csdn.net/kongqz/article/ ...

  7. ebay分布式事务方案中文版

    http://cailin.iteye.com/blog/2268428 不使用分布式事务实现目的  -- ibm https://www.ibm.com/developerworks/cn/clou ...

  8. python之函数用法getattr()

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #python之函数用法getattr() #getattr() #说明: ''' getattr(...) ...

  9. java装箱拆箱

    基本数据类型的自动装箱(autoboxing).拆箱(unboxing)是自J2SE 5.0开始提供的功能. 一般我们要创建一个类的对象的时候,我们会这样: Class a = new Class(p ...

  10. Loadrunner脚本回放 场景运行过程中常见错误分析

    问题一:Loadrunner超时错误问题描述 Loadrunner超时错误:在录制Web协议脚本回放时超时情况经常出现,产生错误的原因也有很多,解决的方法也不同. 问题现象Error -27728: ...