本文转自:http://developer.51cto.com/art/201604/509093.htm

作者:核子可乐译来源:51CTO

原文标题:10
jQuery Snippets for Efficient Web Development

JQuery是继prototype之后又一个优秀的Javascript库。它是轻量级的js库 。它兼容CSS3,还兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+),jQuery2.0及兴许版本号将不再支持IE6/7/8浏览器。jQuery使用户能更方便地处理HTML(标准通用标记语言下的一个应用)、events、实现动画效果,并且方便地为站点提供AJAX交互。jQuery另一个比較大的优势是,它的文档说明非常全。并且各种应用也说得非常具体,同一时候还有很多成熟的插件可供选择。jQuery可以使用户的html页面保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,仅仅须要定义id就可以。下面十项jQuery演示样例可以帮助大家的Web设计项目顺利实现效率提升。

1.检測IE浏览器

在进行CSS设计时,IE浏览器对开发人员及设计师而言无疑是个麻烦。虽然IE6的黑暗时代已经过去,IE浏览器家族的人气亦在不断下滑。但我们仍然有必要对其进行检測。当然,下面片段亦可用于检測其他浏览器。

$(document).ready(function() {
if (navigator.userAgent.match(/msie/i) ){
alert('I am an old fashioned Internet Explorer');
}
});

来源: Stack
Overflow

     2.平滑滚动至页面顶部

下面是jQuery最为常见的一种实现效果:点击一条链接以平滑滚动至页面顶部。尽管没什么新奇感可言,但每位开发人员差点儿都用得上。

$("a[href='#top']").click(function() {
$("html, body").animate({ scrollTop: 0 }, "slow");
return false;
});

来源: Stalk
Overflow

     3.保持始终处于顶部

下面代码片段同意某一元素始终处于页面顶部。能够想见,其很适合处理导航菜单、工具栏或者其他重要信息。

$(function(){ 

var $win = $(window) 

var $nav = $('.mytoolbar'); 

var navTop = $('.mytoolbar').length && $('.mytoolbar').offset().top; 

var isFixed=0; 

processScroll() 

$win.on('scroll', processScroll) 

function processScroll() { 

var i, scrollTop = $win.scrollTop() 

if (scrollTop >= navTop && !isFixed) { 

isFixed = 1 

$nav.addClass('subnav-fixed') 

} else if (scrollTop <= navTop && isFixed) { 

isFixed = 0 

 $nav.removeClass('subnav-fixed') 

} 

} 

来源: DesignBump

     4.替换html标签

jQuery可以很轻松地实现html标签替换,而这也将为我们带来很多其它新的可能。

$('li').replaceWith(function(){ 

  return $("<div />").append($(this).contents()); 

}); 

来源: Allure Web Solutions

     5.检測屏幕宽度

如今移动设备的人气差点儿已经超过了传统计算机。因此对小型屏幕的尺寸进行检測就变得很重要。幸运的是,我们能够利用jQuery轻松实现这项功能。

var responsive_viewport = $(window).width(); 

/* if is below 481px */ 

if (responsive_viewport < 481) { 

    alert('Viewport is smaller than 481px.'); 

} /* end smallest screen */ 

来源:jQuery Rain

     6.自己主动修复损坏图片

假设大家的网站很庞大并且已经上线数年,那么当中或多或少会出现图片损坏的情况。这项功能能够检測损坏图片并依据我们的选择加以替换。

$('img').error(function(){ 

$(this).attr('src', 'img/broken.png'); 

}); 

来源:WebDesignerDepot

     7.检測复制、粘贴与剪切操作

利用jQuery。大家能够很轻松地检測到选定元素的复制、粘贴与剪切操作。

$("#textA").bind('copy', function() { 

    $('span').text('copy behaviour detected!') 

}); 

$("#textA").bind('paste', function() { 

    $('span').text('paste behaviour detected!') 

}); 

$("#textA").bind('cut', function() { 

    $('span').text('cut behaviour detected!') 

}); 

来源: Snipplr

    8.自己主动为外部链接加入target=“blank”属性

在链接至外部网站时,大家可能希望使用target="blank"属性以确保在新的选项卡中打开页面。

问题在于。target="blank"属性并未经过W3C认证。

jQuery可以帮上大忙:下面片段可以检測当前链接是否指向外部。假设是则自己主动为其加入target="blank"属性。

var root = location.protocol + '//' + location.host; 

$('a').not(':contains(root)').click(function(){ 

    this.target = "_blank"; 

}); 

来源: jQuery Rain

     9.悬停时淡入/淡出

又是还有一项“经典”效果,大家能够利用下面片段随时加以运用。

$(document).ready(function(){ 

    $(".thumbs img").fadeTo("slow", 0.6); // This sets the opacity of the thumbs to fade down to 60% when the page loads 

    $(".thumbs img").hover(function(){ 

        $(this).fadeTo("slow", 1.0); // This should set the opacity to 100% on hover 

    },function(){ 

        $(this).fadeTo("slow", 0.6); // This should set the opacity back to 60% on mouseout 

    }); 

}); 

来源: Snipplr

      10.禁用文本/password输入中的空格

不管是电子邮件、username还是password。非常多常见字段都不须要使用空格。下面代码可以轻松禁用选定输入内容中的所有空格。

$('input.nospace').keydown(function(e) { 

if (e.keyCode == 32) { 

return false; 

} 

}); 

十条很实用的jQuery代码片段的更多相关文章

  1. 很实用的JQuery代码片段(转)

    1 元素屏幕居中 jQuery.fn.center = function () { this.css("position","absolute"); this. ...

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

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

  3. 10个简单实用的 jQuery 代码片段

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

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

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

  5. 12 个非常实用的 jQuery 代码片段

    jQuery是一个非常流行而且实用的JavaScript前端框架,本文并不是介绍jQuery的特效动画,而是分享一些平时积累的12个jQuery实用代码片段,希望对你有所帮助. 导航菜单背景切换效果 ...

  6. 几个非常实用的JQuery代码片段

    jQuery是一个兼容多浏览器的javascript库,核心理念是write less,do more(写得更少,做得更多).jQuery使用户能更方便地处理HTML(标准通用标记语言下的一个应用). ...

  7. js动态判断密码强度&&实用的 jQuery 代码片段

    // 网上拷贝的代码,效果不太好需要自己调整<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &q ...

  8. 一些实用的JQuery代码片段收集(筛选,搜索,样式,清除默认值,多选等)

    //each遍历文本框 清空默认值 $(".maincenterul1").find("input,textarea").each(function () { ...

  9. 很棒的jQuery代码片段分享

    jQuery实现的内链接平滑滚动 不需要使用太复杂的插件,只要使用下载这段代码即可实现基于内部链接的平滑滚动 $('a[href^="#"]').bind('click.smoot ...

随机推荐

  1. PTA 循环单链表区间删除 (15 分)

    本题要求实现带头结点的循环单链表的创建和单链表的区间删除.L是一个带头结点的循环单链表,函数ListCreate_CL用于创建一个循环单链表,函数ListDelete_CL用于删除取值大于min小于m ...

  2. Red Hat 7.0 DNS服务配置笔记

    先挂载镜像,然后配置yum,然后安装yum install -y bind 配置静态 IP.DNS就是他本身的IP地址. 修改DNS的配置文件,在后面加入区域配置信息.vim /etc/named.c ...

  3. C# 4.0 新特性dynamic、可选参数、命名参数等

    1.dynamic ExpandoObject熟悉js的朋友都知道js可以这么写 :   1 var t = new Object(); 2 t.Abc = ‘something’; 3 t.Valu ...

  4. C#自定义运行时窗体设计器Runtime FormDesigner

    写在前面:因为业务的需要,有时会使用到自定义运行时窗体设计器Runtime FormDesigner,实现的功能,就是IDE设计器的简化.设想一下,如果可以在程序运行时,再设计一个Form,然后编译代 ...

  5. [转载] Redis快速入门

    转载自http://www.yiibai.com/redis/redis_quick_guide.html Redis是一个开源,先进的key-value存储,并用于构建高性能,可扩展的Web应用程序 ...

  6. 设计模式的征途—9.组合(Composite)模式

    树形结构在软件中随处可见,比如操作系统中的目录结构,公司组织结构等等,如何运用面向对象的方式来处理这种树形结构是组合模式需要解决的问题.组合模式通过一种巧妙的设计方案来使得用户可以一致性地处理整个树形 ...

  7. Spring 4 MVC example with Maven

    In this tutorial, we show you a Spring 4 MVC example, using Maven build tool. Technologies used : Sp ...

  8. 使用dropwizard(3)-加入DI-dagger2

    前言 习惯了Spring全家桶,对spring的容器爱不释手.使用dropwizard,看起来确实很轻,然而,真正使用的时候不得不面临一个问题.我们不可能一个resource就能把所有的业务逻辑囊括! ...

  9. NuGet的使用、部署、搭建私有服务

    NuGet的使用.部署.搭建私有服务 前言 什么是NuGet? 为什么要使用NuGet NuGet的优点 使用 Get-Help NuGet Install-Package Get-Package U ...

  10. Fielddata is disabled on text fields by default. Set fielddata=true on [gender] in order to load fielddata in memory by uninverting the inverted index. Note that this can however use significant memor

    ES进行如下聚合操作时,会报如题所示错误: ➜ Downloads curl -XPOST 'localhost:9200/bank/_search?pretty' -d ' { "size ...