开始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 ...
随机推荐
- CentOS7.4安装部署openstack [Liberty版] (二)
继上一篇博客CentOS7.4安装部署openstack [Liberty版] (一),本篇继续讲述后续部分的内容 一.添加块设备存储服务 1.服务简述: OpenStack块存储服务为实例提供块存储 ...
- RecyclerView.Adapter封装,最简单实用的BaseRecyclerViewAdapter;只需重写一个方法,设置数据链式调用;
之前对ListView的BaseAdapter进行过封装,只需重写一个getView方法: 现在慢慢的RecyclerView成为主流,下面是RecyclerView.Adapter的封装: Base ...
- mysql 存储过程动态拼接sql并执行赋值
)) BEGIN ## 定义变量 ,) ; ## @表示全局变量 相当于php $ ## 拼接赋值 INTO 必须要用全局变量不然语句会报错 SET @strsql = CONCAT('SELECT ...
- python - requests中添加配置文件
HttpRequests.py #-*- coding:utf-8 -*- import requests class HttpRequests(): def http_requests(se ...
- uva-10340-水题
题意:字符串匹配,看样例输入理解题意 直接循环 #include <string> #include<iostream> #include<map> #includ ...
- node-disconf-client基本配置
node-disconf-client 需要cppm install node-disconf-client var disconf = require (' node-disconf-clien ...
- centos使用记
20180404:今天在笔记本上安装了centos6.9,第一次安装的7.4时进不了安装界面,后来下载了6.9版的,可以安装.安装完后启动时出现fail reg的错误,然后提示登陆,不知是用户名为:r ...
- 1.类的加载机制_继承类的加载(一个小的Demo)说明
今天我们先来一个小的Demo来了解类的加载顺序. public class ClassLoaderTest { public static void main(String[] args) { Sys ...
- Mysql 获取表属性
获取表字段信息: select column_name from information_schema.COLUMNS where table_name='表名' nformation_schema. ...
- SecureCRT显示乱码的解决办法
下面来看看SecureCRT的显示出现乱码这种情况.比如: 现在我们重新设置一下 设置下图中的配置 1.选择字符编码为UTF-8. 2.设置字符集为GB2312后保存好后确认退出. 3.再次测试一下.