开始jQuery学习之旅
jQuery写法
//实例写法
$('div').css({width:200,backgroundColor:'red'});
参数规则
// css selector
$('.wrapper ul li').css({width:100,backgroundColor:'red'}); //jquery unique selector
$('.wrapper ul li:first')选择第一个li元素 (last最后一个)
$('.wrapper ul li:odd')选择奇数元素(even偶数元素)
$('.wrapper ul li:eq()')单独选择某一元素(负数是从后往前数)
$('li[data="abc"]')(选择属性data为abc的Li元素)
$('li[data$="abc"]')(以abc结尾)
$('li[data^="abc"]')(以abc开头)
$('li[data!="abc"]')
$('li[data*="abc"]') //null undefind '' 容错机制
//dom (用$包装成jquery对象,包装的目的是使用一系列jquery方法)
<div class = "wrapper">
<div class = "demo">
<span>span1</span>
</div>
<div class = "demo">
<p>p1</p>
</div>
<div class = "demo">
<span>span2</span>
</div>
</div>
<script>
var colorArr = ['red','blue','yellow'];
$('.wrapper .demo').each(function(index,ele){
//console.log(ele) (原生dom)
$(ele).find('span').css({color:colorArr[index]});//(每一个demo都循环,没有span的demo返回空,不报错,就是容错机制)
});
</script> //function
$(function(){ });
$(document).ready(function(){ });
(以上两种形式意义相同)
//两个参数 css selector和context(上下文)
$('ul','.wrapper');
jQuery 使用精髓
选择元素
循环操作
链式调用
//jQuery库 封闭作用域
原理:
(function(){
          function jQuery(selector){
            return new jQuery.prototype.init(selector);
          }
          jQuery.prototype.init = function (selector){
              //this = {};
              //选出 dom 并且包装成jQuery对象 返回
              // id class
              this.length = 0;
              if (selector.indexOf('.')!= -1){
                 var dom = document.getElementByClassName(selector.slice(1));
              }else if (selector.indexOf('#') != -1){
                 var dom = document.getElementById( selector.slice(1));
              }
              if (dom.length == undefined){
                  this[0] = dom;
                  this.length++;
              }else{
                //基础铺垫
                for (var i=0; i < dom.length; i++){
                    this[i] = dom[i];
                    this.length++;
                }
              }
              //return this;
          }
          jQuery.prototype.css = function(config){
            //循环操作每一个dom
            //循环操作
            for (var i = 0;i < this.length; i++){
               for (var attr in config) {
                    this[i].style[attr] = config[attr];
               }
            }
            //链式操作
            return this;
          }
           jQuery.prototype.init.prototype = jQuery.prototype;
window.$ = window.jQuery = jQuery;
})();
开始jQuery学习之旅的更多相关文章
- jQuery学习之旅 Item4 细说DOM操作
		jQuery-–DOM操作(文档处理) Dom是Document Object Model的缩写,意思是文档对象模型.DOM是一种与浏览器.平台.语言无关的接口,使用该接口可以轻松访问页面中所有的标准 ... 
- jQuery学习之旅 Item1 选择器【一】
		点击"名称"会跳转到此方法的jQuery官方说明文档. 1. 基础选择器 Basics 名称 说明 举例 #id 根据元素Id选择 $("divId") 选择I ... 
- jquery学习之旅
		在jQuery中,css()方法的功能是设置或获取元素的某项样式属性. $<"div">.css("font-weight","bold& ... 
- jQuery学习之旅 Item10  ajax快餐
		1. 摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案, 即使你会使用jQuery也能在阅读中发现些许秘籍. 本篇文章讲解如何使用jQuery方便快捷的实现A ... 
- jQuery学习之旅 Item9 动画效果
		1.元素的显示和隐藏 display:none; 隐藏 display:block; 显示 简单显示和隐藏方法 a) show() 显示 b) hide() 隐藏 c) toggle() 开关,显示则 ... 
- jQuery学习之旅 Item8 DOM事件操作
		1.jquery页面载入事件 1.传统加载事件 <body onload="函数名()"> 页面全部html和css代码加载完成之后再调用指定的onload函数 win ... 
- jQuery学习之旅 Item7 区别this和$(this)
		刚开始以为this和$(this)就是一模子刻出来.但是我在阅读时,和coding时发现,总不是一回事,这里就谈谈this与$(this)的区别. 1.jQuery中this与$(this)的区别 $ ... 
- jQuery学习之旅 Item6 好用的each()
		1.javascript 函数的调用方式 首先来研究一下jquery的each()方法的源码,在这之前,先要回顾一下javascript函数具体调用样式: 普通函数调用 setName(); 可以作为 ... 
- jQuery学习之旅 Item5 $与jQuery对象
		1.$符号的由来 $符号本质就是函数的名字. jquery源码分析 通过分析我们知道,在jquery里边不只可以使用$符号,还可以使用jQuery标志 解决冲突问题 有的项目是中间过渡项目(proto ... 
- jQuery学习之旅 Item2 选择器【二】
		这里接着上一个Item1 把jQuery的选择器讲完.主要有:属性过滤器和子元素过滤器 点击"名称"会跳转到此方法的jQuery官方说明文档. 5. 属性过滤器 Attribute ... 
随机推荐
- 7 家 IT 厂商 6394.5 万元中标天津公安云项目(虚拟化、数据库、软件开发)
			http://mp.weixin.qq.com/s/kjum54HJorGTPtZiM-HE1g 天津市公安局云计算平台项目分为:大数据部分.虚拟化部分.数据库部分,软件开发部分,预算分别为:2350 ... 
- Spring boot 下使用 Swagger
			通过Swagger 可以更好的将后台的RESTfull API文档化,如下图所示: 1. Swagger 主要依赖以下两个jar包: <!-- https://mvnrepository.com ... 
- linux tomcat启动后无法访问
			先是按网上资料先下载安装包,然后上传到linux,启动后发现8080端口并未被占用.查了很多资料,不知道神马原因了.最后用yum安装后就可以访问了. 教程如下: 本教程介绍在CentOS 7服务器上使 ... 
- python生成器异步使用
			import dis,time # 反汇编 import threading def request(): print('start request') v = yield print(v) def ... 
- tornado-websocket
			WebSockets 允许浏览器和服务器之间进行 双向通信 server端: class WebSocketHandler(WebBaseHandler): ''' websocket ''' use ... 
- [Unity移动端]Touch类
			Touch类的信息只能在移动端(触摸屏)上能够获取,在编辑器上是不能获取到的.因此,为了方便测试,可以打包apk后在模拟器上跑: unity打包apk:https://www.jianshu.com/ ... 
- 关于windows中在env中执行django-admin.py出现Access is denied.的解决办法
			(ll_env) E:\python\learning_log>django-admin.pyAccess is denied. 这个是路径的问题,默认的文件获取路径没能正常获取文件 我使用绝对 ... 
- 《算法》第六章部分程序 part 2
			▶ 书中第六章部分程序,包括在加上自己补充的代码,B-树 ● B-树 package package01; import edu.princeton.cs.algs4.StdOut; public c ... 
- Oracle数据库基础教程
			Oracle基础 简介 数据库实例 表空间 登录身份和角色 用户和授权 数据类型 数据操作 导入数据库 一.Oracle基础: 1.简介 Oracle创建数据库不能像SQL Server那样用一个简单 ... 
- 监控msyql 连接数 及 各用户连接数
			#!/bin/bash while true do date +%Y%m%d-%H:%M:%S mysql -uroot -p'xxx' -e "select count(1) from i ... 
