Visual Studio下使用jQuery的10个技巧
广泛流行的jQuery是一个开源的,跨浏览器和兼容CSS 3的JavaScript库,你可以用它简化你的JavaScript编码任务和操作(添加,编辑和删除)HTML内容中的DOM元素,本文介绍10个在Visual Studio下使用jQuery的10个有用的技巧,希望对你有所帮助。
你需要准备些什么
为了在Visual Studio中顺利使用jQuery,你需要安装下面这些软件:
Visual Studio 2008
Visual Studio 2008 SP1
jQuery库
Visual Studio 2008 jQuery插件
或者直接使用Visual Studio 2010,因为它已经内置支持jQuery了,如果你恰好在使用Visual Studio 2010,那么恭喜你,默认已经安装有jQuery库了。
在深入了解使用jQuery操作网页中的DOM元素之前,我们先来看看jQuery的介绍和它的好处。
一些有用的jQuery技巧
jQuery最显著的特点包括支持:
浏览器无关:jQuery支持绝大多数浏览器;
简化的事件处理模型:jQuery支持优秀的,易于使用的,范式化的事件处理模型,大大减少了代码量,jQuery事件处理模型在所有浏览器中都是一致的,事件对象是一个跨浏览器的标准化对象,事件对象总是作为一个参数传递给事件处理程序;
无缝扩展:jQuery通过易于使用的插件API提供了扩展支持,可以无缝扩展jQuery核心库。
下面开始介绍使用jQuery的一些技巧
1、使用jQuery预加载图像
预加载图像被认为是一个最佳实践,因为它提高了网页的渲染速度,下面的代码显示了jQuery预加载图像的代码片段:
- jQuery.preloadImages = function()
- {
- for(var x = 0; x").attr("src", arguments[x]);
- }};
2、使用jQuery禁用上下文菜单
下面的代码举例说明了如何使用jQuery禁用上下文菜单:
- $(document).ready(function(){
- $(document).bind("contextmenu",function(e){
- return false;
- });
- });
3、在jQuery中添加和删除CSS类
在jQuery中添加和删除CSS类非常简单:
- //To add a css class, you can use the following piece of code
- if($(id).hasClass('testClass'))
- {
- $('#div1').addClass('testclass');
- }
- //To remove a css class, you can use the following piece of code
- if($(id).hasClass('testClass'))
- {
- $('#div1').removeClass('testclass');
- }
4、检查某个元素是否可用
你可以使用jQuery检查网页中的某个元素是否存在,下面是一个例子:
- if ($('img').length)
- {
- alert('Image elements available');
- }
- else
- {
- alert('Image elements not available');
- }
5、使用jQuery检查浏览器类型
不同的浏览器执行脚本的方法有点不一样,但你可以使用jQuery轻松识别浏览器的类型,然后执行相应的自定义代码,下面是用jQuery检查浏览器的代码片段:
- if (jQuery.browser.mozilla)
- {
- // Code to execute if browser is Mozilla
- }
- if (jQuery.browser.msie)
- {
- // Code to execute if browser is IE
- }
- if (jQuery.browser.safari)
- {
- // Code to execute if browser is Safari
- }
- if (jQuery.browser.opera)
- {
- // Code to execute if browser is Opera
- }
6、使用jQuery发现隐藏的元素
你可以使用size()检查隐藏的DOM元素,下面是一个例子:
- if( $("div.hidden").size)
- {
- alert('One or more divs are hidden');
- }
你也可以使用length()函数实现相同的结果,其实size()函数也调用的是length()函数,因此length()函数更快。
- if( $("div.hidden").length )
- {
- alert('One or more divs are hidden');
- }
7、在DOM中保存数据
你可以使用Data()函数在DOM元素中保存数据,下面的代码片段显示了如何使用jQuery给一个DOM元素赋值:
- $('#div1').data ('Key', 'Value');
如果要检索保存在DOM元素中的数据,你可以使用下面的代码:
- $('#div1').data ('Key');
8、检索某个元素的父元素
使用jQuery检查某个元素的父元素非常简单,你需要做的就是像下面这样调用closest()函数:
- var id = $("btnHello").closest("div").attr("id");
9、正确使用jQuery中的链表
链表(Chaining)是jQuery中的一个伟大功能,它促使链表中的行为被陆续执行,你可以使用链表方法来用它,下面的代码就是一个例子:
- $('div1').removeClass('color').addClass('no-color');
10、使用jQuery操作选择列表
jQuery让使用选择列表变得更容易,你可以从选择列表中轻松地删除一个列表项,具体方法如下:
- $("#employeeList option[value='9']").remove();
下面的代码举例说明了如何从选择列表中以文本形式检索一个选择项:
- $('#employeeList :selected').text(); 原文出处:http://developer.51cto.com/art/201011/235795.htm
Visual Studio下使用jQuery的10个技巧的更多相关文章
- Cocos开发中Visual Studio下HttpClient开发环境设置
Cocos2d-x 3.x将与网络通信相关的类集成到libNetwork类库工程中,这其中包括了HttpClient类.我们需要在Visual Studio解决方案中添加libNetwork类库工程. ...
- Cocos开发中Visual Studio下libcurl库开发环境设置
我们介绍一下win32中Visual Studio下libcurl库开发环境设置.Cocos2d-x引擎其实已经带有为Win32下访问libcurl库,Cocos2d-x 3.x中libcurl库文件 ...
- Visual Studio下SQLite数据库开发环境设置
由于我们介绍的内容都是基于微软的Visual Studio下开发的Win32平台,所以下边我们介绍Visual Studio下SQLite数据库开发环境设置.具体而言我们有两种方式可以在Visual ...
- Visual Studio下Qt编程中对中文的处理
Visual Studio下Qt编程中对中文的处理 本文为原创文章,原文地址http://www.cnblogs.com/c4isr/p/qt_develop_in_vs.html Visual St ...
- Cocos发展Visual Studio下一个libcurl图书馆开发环境的搭建
我们解释win32在Visual Studio下一个libcurl图书馆开发环境的搭建.Cocos2d-x发动机实际上与Win32在访问libcurl库.Cocos2d-x 3.x在libcurl库文 ...
- Cocos发育Visual Studio下一个HttpClient开发环境设置
Cocos2d-x 3.x相关类集成到网络通信libNetwork图书馆project于.这其中包括:HttpClient分类. 我们需要在Visual Studio溶液中加入libNetwork图书 ...
- Visual Studio 2012设置Jquery/Javascript智能提示
Visual Studio 2012设置Jquery/Javascript智能提示 在Visual Studio 2008 Visual Studio 2010中微软已经开始支持jquery/java ...
- CMake在Visual Studio下保持目录结构
CMake在Visual Studio下保持目录结构 原理 主要通过CMAKE自带函数source_group来设定. 需要把add_executable()函数进行封装,包裹一层source_gro ...
- Visual Studio下运行PowerShell脚本自增小版本号并发布到Nuget服务器上
Visual Studio下运行PowerShell脚本自动更新项目里AssemblyInfo.cs文件的版本(自增小版本号)并发布到Nuget服务器上 附脚本[ update.ps1文件内容]: $ ...
随机推荐
- RTB撕开黑盒子 Part 3: Beyond Surplus
在本文中,我将解释如果要对整个推广计划最大化利润,决定是否应该出价的应该是期望回本率(ROI),而不是期望利润,这与我们以前介绍的有所不同.在Datacratic,我们已经在2012年底切到了基于RO ...
- MVC3.0+knockout.js+Ajax 实现简单的增删改查
MVC3.0+knockout.js+Ajax 实现简单的增删改查 自从到北京入职以来就再也没有接触MVC,很多都已经淡忘了,最近一直在看knockout.js 和webAPI,本来打算采用MVC+k ...
- error:“Unexpected namespace prefix "xmlns" found for tag LinearLayout”
错误“Unexpected namespace prefix "xmlns" found for tag LinearLayout”的解决方法 androidUnexpected ...
- python tornado nginx deployment tornado 的部署在linux Nginx服务器
题外话: 这里分享一个链接是将Flask 和 Apache 用 mod_wsgi 来进行传唤的部署方式,在digital ocean VPS 上的. https://www.digitalocean. ...
- Qt在表格中加入控件
任务:使用QTableWidget动态生成表格,在每行的某两列中加入QComboBox下拉框控件和QPushButton按钮控件 有添加,删除,编辑功能,每行的按钮可以浏览文件夹并选择文件 1.新建一 ...
- 【Linux】CentOS 学习笔记之二(命令)
打开文件夹: cd finename 创建目录:mkdir /filename mkdir -p /test/123/111 (多级目录) 删除目录: rmdir 删除目录或文件: r ...
- VS2012下基于Glut 矩阵变换示例程序2:
在VS2012下基于Glut 矩阵变换示例程序:中我们在绘制甜圈或者圆柱时使用矩阵对相应的坐标进行变换后自己绘制甜圈或者圆柱.我们也可以使用glLoadMatrixf.glLoadMatrixd载入变 ...
- JS,CSS是前端,JAVA PHP ASP是后端,数据库是后端的处理对象,非代表前后底
大海-mysql-oracle(529513481) 19:02:18 象我这边,前台都是php,而php做数据分析是不太理想的,做中间件没人力,难办 横瓜(601069289) 19:20:15 ...
- Kafka consumer处理大消息数据问题
案例分析 处理kafka consumer的程序的时候,发现如下错误: ERROR [2016-07-22 07:16:02,466] com.flow.kafka.consumer.main.Kaf ...
- JS高程5.引用类型(6)Array类型的位置方法,迭代方法,归并方法
一.位置方法 ECMAScript5为数组实例添加了两个位置:indexOf()和 lastIndexOf().这两个方法接收两个参数:要查找的项和(可选的)表示查找起点位置的索引(如在数组[7,8, ...