锋利的jQuery读书随笔
代码规范:
var $variable = jQuery对象;
var variable = DOM对象;
jQuery对象无法使用DOM对象的任何方法,同样DOM对象也无法使用jQuery对象的任何方法。
下面两个代码是等效的,获取id为foo的元素的html代码。
document.grtElementById("foo").innerHTML;
$("#foo").html();
DOM对象和Jquery对象的转换
JQuery->DOM
1) var $cr = $("#cr");
var cr = $cr[0];
alert(cr.checked); 检测这个checkbox是否被选中了
2) var $cr = $("#cr");
var cr = $cr.get(0);
alert(cr.checked); 检测这个checkbox是否被选中了
DOM->JQuery
var cr = document.getElementById("cr");
var $cr = $(cr);
<input type="checkbox" id="cr" /><label for="cr">我已经阅读了上面制度. </label>
用DOM方式来判断复选框是否被选中
$(document).ready(function(){
var $cr = $("$cr");
var cr = $cr[0];
$cr.click(function){
if(cr.checked){
alert("感谢你的支持!你可以继续操作");
}
}
})
用JQuery方式来判断复选框是否被选中
$(document).ready(function)(){
var $cr = $("#cr");
$cr.click(function(){
if ($cr.is(":checked")) {
alert("感谢你的支持!你可以继续操作");
}
})
}
JQuery.noConflict()函数可以将变量的控制权移交给其他JavaScript库
JQuery.noConflict()函数也可以自定义一个快捷方式
……省略其他代码
var $j = JQuery.noConflict();
$j(function(){
………
})
传统的js用getElementById()和getElemnetByTagName()函数获取标签必须要进行判断
<div>test</div>
<script type="text/javascript">
if (decoment.getElementById("tt") {
document.getElementById("tt").style.color="red";
}
</script>
<div>test</div>
<script type="text/javascript">
$('#tt').css("color","red"); 这里无需判断$('#tt')是否存在
</script>
$('#tt')获取的永远是对象,即使页面上没有这个元素,因此当要用jQuery检查某个元素在网页上是否存在是,不要用以下代码:
if ($('#tt')) { //do something }
而应该根据获取到的元素的长度来判断,代码如下
if ($('#tt').length>0) {//do something }
或者转化成dom对象来判断,代码如下:
if ($('#tt')[0]) { //do something }
给网页中的所有<p>元素添加onclick事件
js代码如下:
var items = document.getElementByTagName("p");
for(i=0;i<items.length;i++){
items[i].onclick = function(){
//do something
}
}
对多选框进行操作,输出选中的多选框的个数
var btn = document.getElementByName("btn");
tbn.onclick = function (){
var arrays = new Array();
var items = document.getElementByName("check");
for(i=0 ; i<items.length;i++){
if(items[i].checked){
arrays.push(items[i].value);
}
}
alert("选中的个数为"+arrays.length);
| 鼠标事件 | 键盘事件 | 表单事件 | 文档/窗口事件 |
|---|---|---|---|
| click | keypress | submit | load |
| dblclick | keydown | change | resize |
| mouseenter | keyup | focus | scroll |
| mouseleave | blur | unload | |
| hover |
注意:load() 方法在 jQuery 版本 1.8 中已废弃。
锋利的jQuery读书随笔的更多相关文章
- 锋利的jQuery读书笔记---选择器
前段时间入手了锋利的jQuery(第二版),想着加强下自己的js能力,可前段时间一只在熟悉Spring和Hibernate.最近抽时间开始读这本书了,随便也做了些记录. 读书的过程是边看边代码测试,所 ...
- 锋利的jQuery读书笔记---jQuery中Ajax--序列化元素、Ajax全局事件
serialize()方法: 作用于一个jQuery对象,它能够将DOM元素内容序列化为字符串,用于Ajax请求. <!DOCTYPE html> <html> <hea ...
- 锋利的jQuery读书笔记---jQuery中Ajax--get、post等方法
load()方法通常用来从Web服务器上获取静态的数据文件,然而这并不能体现ajax的全部价值. 在项目中,如果需要传递一些参数给服务器中的页面,那么可以使用$.get()或者$.post()方法(或 ...
- 锋利的jQuery读书笔记---jQuery中Ajax--load方法
第一个Ajax例子 <!DOCTYPE html> <html> <head lang="en"> <meta charset=" ...
- 锋利的jQuery读书笔记---jQuery中动画
jQuery中的动画: 1.show和hide 2.fadeIn和fadeOut 3.slideUp和slideDown <!DOCTYPE html> <html> < ...
- 锋利的jQuery读书笔记---jQuery中的事件
jQuery中的事件: 1.加载DOM:注意window.onload和$(document).ready()的不同 2.事件绑定 3.合成事件 --2和3的详细信息见代码- <!DOCTYPE ...
- 锋利的jQuery读书笔记---jQuery中操作DOM
一般来说,DOM的操作分为3个方面,即DOM Core.HTML-DOM和CSS-DOM jQuery中的DOM操作主要包括以下种类: 查找节点 查找元素节点 查找属性节点 创建节点 创建元素节点 创 ...
- <锋利的jQuery>读书笔记
- 《锋利的jQuery》读书笔记(DOM+事件)
前阵子买了一批书,就从锋利的jQuery看起吧,书中一些太过常规以及没有强记必要性的操作就不记录了. 1.DOM加载后执行JS $(document).ready(function(){ //.... ...
随机推荐
- GitHub:Alibaba
ylbtech-GitHub:Alibaba 1.返回顶部 2.返回顶部 3.返回顶部 4.返回顶部 5.返回顶部 1. https://github.com/alibaba 2. ...
- Session技术入门代码案例
package com.loaderman.demo; import javax.servlet.ServletException; import javax.servlet.http.*; impo ...
- Android studio2 中的 SDK Manager的使用-------Android SDK 的安装与更新(Install missing platform(s) and sync project 编译错误解决)
最近在编写Android程序,其中有一个问题就是对旧应用的导入,此时往往你的Android SDK中并没有老版本的Android SDK, 此时往往会提示你出现错误 Install missing p ...
- Maven-SSM框架整合
1.创建Maven项目 配置pom.xml依赖 <!-- 允许创建jsp页面 --> <dependency> <groupId>javax.servlet< ...
- fiddler过滤指定的请求
需要过滤的请求如图: 设置过滤: 正则表达式(REGEX:\.(js|css|google|favicon\?.*)+)
- C#在非UI线程调用UI线程的控件
首先需要定义一个委托(delegate): private delegate void delegateSetProcessBarVal(int value); 然后定义一个方法来执行具体的操作: p ...
- 认识一下 Kafka
Kafka 基本概述 什么是 Kafka Kafka 是一个分布式流式平台,它有三个关键能力 订阅发布记录流,它类似于企业中的消息队列 或 企业消息传递系统 以容错的方式存储记录流 实时记录流 Kaf ...
- ApiDoc 后端接口注释文档的使用
前端和后端注释文档生成 前端和后端的 函数及api 说明文档生成总结,持续更新中 by Qzx 参考网址 jsDoc - 中文说明 jsDoc 使用教程 后台接口文档生成器 - APIDOC官网 ap ...
- DirectX* 11 多线程渲染的性能、方法和实践
对于在 CPU 上运行的 PC 游戏,渲染通常是主要的性能瓶颈:多线程渲染是一种消除瓶颈的有效方法.本文研究了 DirectX* 11 多线程渲染的性能可扩展性,讨论了多线程渲染的两种基本方法,并介绍 ...
- 【神经网络与深度学习】GLog使用笔记
环境: XPsp3 vs2005 glog-0.3.3 http://download.csdn.net/detail/chenguangxing3/6661667 编译: glog-0.3.3里面有 ...