1. 检查数据是否包含在Array中

//jQuery实现

jQuery.inArray("value", arr);

// 使用方法: if( jQuery.inArray("value", arr) != -1 ) { true };

原生javascript实现:

Array.prototype.inArray=function(value){

for(var i=0;i<this.length;i++) {

if(this[i]==value) {

return true;

}

}

return false;

}

用法:

var myArray=['aa','bb','cc'];

myArray.inArray('cc');

2. 使文本不能够被选中

(function($) {  
 
    $.fn.unselectable = function() {  
        this.each(function() {  
            this.onselectstart = function() { return false; };  
            this.unselectable = 'on';  
            this.style.MozUserSelect = 'none';  
        });  
    };  
 
})(jQuery);
使用方法 $(dom).unselectable();
 
3. 检查数据是否含有小数
Number.prototype.hasDec = function() {return !!(this % 1);}  
//使用方法
//var num = 34.34; num.hasDec(); > true 
 
4. 检查URL是否有效
function urlExists(testUrl) {  
    var http = jQuery.ajax({  
        type:"HEAD",
        url: testUrl,  
        async: false  
    })  
    return http.status!=404;  
}
 
5. 复制一个Array
Array.prototype.duplicate=function(array) {
  return this.concat(this);
 
}
 
6. trim
//jQuery  
jQuery.trim(' string '); //return 'string'  
 
//javascript  
String.prototype.trim = function() {  
   return this.replace(/^\s+|\s+$/g,"");  
}  
String.prototype.ltrim = function() {  
   return this.replace(/^\s+/g,"");  
}  
String.prototype.rtrim = function() {  
   return this.replace(/\s+$/g,"");  
}
使用:
var test = "   Test   "; 
var test3 = test.trim();    // returns "Test"
 
 
7. getElementByClassName
Object.prototype.getElementsByClass = function (searchClass, tag) {        
   var returnArray = [];  
   tag = tag || '*';  
   var els = this.getElementsByTagName(tag);  
   var pattern = new RegExp('(^|\\s)'+searchClass+'(\\s|$)');  
   for (var i = 0; i < els.length; i++) {  
      if ( pattern.test(els[i].className) ) {  
         returnArray.push(els[i]);  
      }  
   }  
   return returnArray;  
}
//返回class为"className"  的所有dom元素
els=document.getElementsByClass('className');  
//返回class为‘className’的所有p的dom元素
els=document.getElementsByClass('className','p');
 
8. 添加/移除/切换 dom元素的class
 
var cssClasses = {  
    addClass: function(ele,cls) {  
        if (!Utils.hasClass(ele,cls)) ele.className += " "+cls;  
    },  
    removeClass: function(ele,cls) {  
        if (Utils.hasClass(ele,cls)) {  
            var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');  
            ele.className=ele.className.replace(reg,' ');  
        }  
    },  
    toggleClass: function(ele,cls) {  
        if (this.hasClass(ele,cls)) {  
            this.removeClass(ele,cls);  
        }  
        else {  
            this.addClass(ele,cls);  
        }  
    }  
}

使用方法:

var element = document.getElementById('someHTMLel');  
 
cssClasses.addClass(element, 'cssClassName'); //添加css class  
cssClasses.removeClass(element, 'cssClassName'); //移除css class  
cssClasses.toggleClass(element, 'cssClassName'); //切换css class  
cssClasses.hasClass(element, 'cssClassName'); //返回true or false;
 
9. 检查元素是否含有滚动条

(function($) {
$.fn.hasScrollBar = function() {
return this.get(0).scrollHeight > this.height();
}
})(jQuery);

调用方法$(”).hasScrollBar();返回boolean型

10. 自动的滚动到页面特定区域

jQuery.fn.autoscroll = function(selector) {
$('html,body').animate(
{scrollTop: $(selector).offset().top},
500
);
}
//Then to scroll to the class/area you wish to get to like this:
$('.area_name').autoscroll();

11. 关闭右键的菜单

$(document).bind('contextmenu',function(e){ return false; });

12 .判断一个图片是否加载完全

$('#theGBin1Image').attr('src', 'image.jpg').load(function() {
alert('This Image Has Been Loaded');
});

13. 在表单中禁用“回车键”

大家可能在表单的操作中需要防止用户意外的提交表单,那么下面这段代码肯定非常有帮助:

$("#form").keypress(function(e) {
if (e.which == 13) {
return false;
}
});

 
 

几个有用的JavaScript/jQuery代码片段(转)的更多相关文章

  1. 高效Web开发的10个jQuery代码片段(10 JQUERY SNIPPETS FOR EFFICIENT WEB DEVELOPMENT)

    在过去的几年中,jQuery一直是使用最为广泛的JavaScript脚本库.今天我们将为各位Web开发者提供10个最实用的jQuery代码片段,有需要的开发者可以保存起来. 1.检测Internet ...

  2. 50个jquery代码片段(转)

    本文会给你们展示50个jquery代码片段,这些代码能够给你的javascript项目提供帮助.其中的一些代码段是从jQuery1.4.2才开始支持的做法,另一些则是真正有用的函数或方法,他们能够帮助 ...

  3. 50个必备的实用jQuery代码段+ 可以直接拿来用的15个jQuery代码片段

    50个必备的实用jQuery代码段+ 可以直接拿来用的15个jQuery代码片段 本文会给你们展示50个jquery代码片段,这些代码能够给你的javascript项目提供帮助.其中的一些代码段是从j ...

  4. 一些实用的JQuery代码片段收集

    本文将展示50个非常实用的JQuery代码片段,这些代码能够给你的JavaScript项目提供帮助.其中的一些代码段是从jQuery1.4.2才开始支持的做法,另一些则是真正有用的函数或方法,他们能够 ...

  5. Web开发者必须知道的10个jQuery代码片段

    在过去的几年中,jQuery一直是使用最为广泛的JavaScript脚本库.今天我们将为各位Web开发者提供10个最实用的jQuery代码片段,有需要的开发者可以保存起来. 1.检测Internet ...

  6. Jquery学习总结(4)——高效Web开发的10个jQuery代码片段

    在过去的几年中,jQuery一直是使用最为广泛的JavaScript脚本库.今天我们将为各位Web开发者提供10个最实用的jQuery代码片段,有需要的开发者可以保存起来. 1.检测Internet ...

  7. 经验分享:10个简单实用的 jQuery 代码片段

    尽管各种 JavaScirpt 框架和库层出不穷,jQuery 仍然是 Web 前端开发中最常用的工具库.今天,向大家分享我觉得在网站开发中10个简单实用的 jQuery 代码片段. 您可能感兴趣的相 ...

  8. 最实用、最常用的jQuery代码片段

    // chinacoder.cn JavaScript Document $(document).ready(function() { //.filter(":not(:has(.selec ...

  9. 20+个可重复使用的jQuery代码片段

    jQuery已经成为任何web项目的重要组成部分.它为网站提供了交互性的通过移动HTML元素,创建自定义动画,处理事件,选择DOM元素,检索整个document ,让最终用户有一个更好的体验. 在这篇 ...

随机推荐

  1. C++_直接插入排序

    #include <iostream> using namespace std; void insertSort(int a[], int n) {     for(int i=1;i&l ...

  2. Django- 分页

    1. 防止 翻页直接输入值错误导致翻页出现问题 应该捕获输入的值,如果有异常 跳转会第一页 try: page = int(传递过来的值) if(page <0): page=1 except ...

  3. Java设计模式(七) 模板模式-使用钩子

    1,模板类 package com.pattern.template; public abstract class CaffeineBeverageWithHook { void prepareRec ...

  4. JavaScript的由来, 浏览器的20年

    在很久以前那时候还没有Yahoo,Google....人们还在用28.8kbit/s的"猫"上网, 用户注册或者登录的时候所有的验证都是在服务器验证的, 如果用户注册的时候用户名或 ...

  5. linux(本机)配置域名

    hosts是一个没有扩展名的系统文件, 其作用就是将主机名映射到对应的ip地址. 当用户执行一条ping命令时(如ping www.abc.com),系统会首先自动从hosts文件中寻找www.abc ...

  6. win7安装nodejs

    刚刚在网上看到Cheerio,为服务器特别定制的,快速.灵活.实施的jQuery核心实现,适合各种Web爬虫程序. 看了下,cheerio 是nodejs的抓取页面模块 于是决定先学习下nodejs了 ...

  7. Java反序列化测试

    前言:有没有想过,如何将对象进行“加密”后写入磁盘?序列化帮你实现! 1.概念 序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程.在序列化期间,对象将其当前状态写 ...

  8. TLS版本

    常见应用: https其实就是建构在SSL/TLS之上的 http协议. 1) setProtocol="TLS" will enable SSLv3 and TLSv1 2) s ...

  9. 56. Android中进程优先级小结

    作为一个多任务的系统,Android 系统当然能够尽可能长的保留一个应用进程,但是由于新的或者更重要的进程需要更多的内存,系统不得不逐渐终结老的进程来获取内存.为了声明哪些进程需要保留,哪些需要kil ...

  10. 图像卷积、相关以及在MATLAB中的操作

    图像卷积.相关以及在MATLAB中的操作 2016年7月11日 20:34:35, By ChrisZZ 区分卷积和相关 图像处理中常常需要用一个滤波器做空间滤波操作.空间滤波操作有时候也被叫做卷积滤 ...