个人学习笔记

 初识jQuery

1.我的第一个JQuery

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>MyJQuery</title>
<script src="jquery-1.12.4.js"></script>
<script>
//JQuery的固定写法
$(document).ready(function () {
alert("Hello ,JQuery");
});
</script>
</head>
<body>
</body>
</html>

2.JQuery和JS入口函数的区别

原生JS个JQuery的加载模式不相同:
  原生JS会等到DOM加载完毕,图片也加载完毕之后执行
  JQuery只要DOM加载完毕就开始执行
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JQuery和JS入口函数的区别</title> <script src="jquery-1.12.4.js"></script>
<script> //通过原生JS拿到DOM元素
window.onload = function (ev) {
var img = document.getElementsByTagName("img")[0];
console.log(img);
//可以拿到DOM元素的宽和高
var width = window.getComputedStyle(img).width;
console.log("onload",width);
}
//通过JQuery拿到DOM元素,但是JQuery不可以拿到DOM元素的宽和高
$(document).ready(function () {
var $img = $("img")[0];
console.log($img);
});
//原生的JS如果编写了多个入口函数,后面的会覆盖前面的
window.onload = function (ev) {
alert("Hello , JavaScript1");
}
window.onload = function (ev) {
alert("Hello , JavaScript2");
}
// JQuery编写多个入口函数,后面的不会覆盖前面的
$(document).ready(function () {
alert("Hello , JQuery1");
});
$(document).ready(function () {
alert("Hello , JQuery2");
});
</script>
</head>
<body>
<img src="https://img.alicdn.com/tfs/TB1ZXiuQhTpK1RjSZFMXXbG_VXa-520-280.png_q90_.webp" alt="">
</body>
</html>
3.JQuery入口函数的其他写法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JQuery入口函数的其他写法</title>
<script src="jquery-1.12.4.js"></script>
<script>
//第一种写法
$(document).ready(function () {
alert("Hello JQuery");
}); //第二种写法
jQuery(document).ready(function () {
alert("Hello JQuery");
}); //第三种写法(推荐)
$(function () {
alert("Hello ,JQuery");
}); //第四种写法
jQuery(function () {
alert("Hello ,JQuery");
}); </script>
</head>
<body> </body>
</html>
4.JQuery的冲突问题
  原来的$访问符号被覆盖下面介绍解决冲突的办法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JQuery的冲突问题</title>
<script src="jquery-1.12.4.js"></script>
<script src="test.js"></script> <script>
//1.释放$的使用权 注意:释放操作必须在编写其他JQuery代码之前,释放之后就不能继续使用$,改为写JQuery
jQuery.noConflict();
jQuery(function () {
alert("Hello jQuery!");
}); //2.自定义访问符号
var jq = jQuery.noConflict();
jq(function () {
alert("Hello jQuery!");
});
</script>
</head>
<body>
</body>
</html>

 JQuery核心函数和工具方法

 5.JQuery的核心函数
  $();就代表调用JQuery的核心函数
 
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JQuery的核心函数</title>
<script src="jquery-1.12.4.js"></script>
<script>
//1.接收一个函数
$(function () {
alert("Hello jQuery!");
//2.接收一个字符串代码片段,会被包装成一个JQuery对象,对象中保存了创建的DOM
var $p = $("<p>我是段落</p>");
console.log($p);
//3.接收一个字符串选择器,会被包装成一个JQuery对象,对象中保存了找到的DOM
var $box1 = $(".box1");
$box1.append($p);
var $box2 = $("#box2");
console.log($box1);
console.log($box2);
var span = document.getElementsByTagName("span")[0];
console.log(span);
//4.接收一个DOM对象,会被包装成一个JQuery对象,对象中保存了找到的DOM
var $span = $(span);
console.log($span);
});
</script>
</head>
<body>
<div class="box1"></div>
<div id="box2"></div>
<span>我是span</span>
</body>
</html>
6.jQuery对象
  jQuery 对象是一个伪数组,具有索引,长度
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jQuery对象</title>
<script src="jquery-1.12.4.js"></script>
<script>
/*
jQuery 对象是一个伪数组,具有索引,长度
*/
$(function () {
var $div = $("div");
console.log($div);
});
var nums =[1,2,3];
console.log(nums);
</script>
</head>
<body>
<div>div1</div>
<div>div2</div>
<div>div3</div>
</body>
</html>
7.静态方法和实例方法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>静态方法和实例方法</title>
<script>
//定义一个测试类AClass
function AClass() {
}
//添加一个静态方法并调用
AClass.staticMethod = function () {
alert("staticMethod");
}
AClass.staticMethod();
//添加一个实例方法并调用
AClass.prototype.instanceMethod = function () {
alert("instanceMethod");
}
var a = new AClass();
a.instanceMethod();
</script>
</head>
<body>
</body>
</html>
8. 静态方法-each方法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>静态方法-each方法</title>
<script src="jquery-1.12.4.js"></script>
<script>
var arr = [1,3,5,7,9];
/**
* 第一个参数,遍历到的元素
* 第二个参数,当前遍历的索引
* 注意:原生 JS只能遍历数组,不能遍历伪数组
*/
arr.forEach(function (value,index) {
console.log(index,value);
});
/**
* 利用JQuery的静态方法each遍历真数组.
* 第一个参数为索引,第二个参数为值
*/
$.each(arr,function (index,value) {
console.log(index,value);
});
//定义一个伪数组
var obj = {0:1,1:3,2:5,3:7,4:9,length:5}
/**
* 利用JQuery的静态方法each遍历伪数组.
* 第一个参数为索引,第二个参数为值
*/
$.each(obj,function (index,value) {
console.log(index,value);
});
</script>
</head>
<body>
</body>
</html>
9.静态方法-map方法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>静态方法-map方法</title>
<script src="jquery-1.12.4.js"></script>
<script>
var arr = [1,3,5,7,9];
var obj = {0:1,1:3,2:5,3:7,4:9,length:5}
//1.利用原生 JS的map方法遍历, 不能遍历伪数组
arr.map(function (value, index, array) {
console.log(index,value,array);
})
/**
* 第一个参数:要遍历的数组
* 第二个参数,遍历到每个元素之后执行的回调方法
* function的参数:
* 第一个参数:遍历到的值
* 第二个参数:遍历到的索引
*/
$.map(arr,function (index,value) {
console.log(index,value);
})
/**
* 默认返回一个空数组
* map静态方法可以在回调函数中通过return对数组进行处理
* 注意:和JQuery的静态方法each一样,也可以遍历伪数组
*/
var res = $.map(obj,function (index,value) {
console.log(index,value);
})
/**
* 默认返回要遍历的数组本身
* each静态方法不支持在回调函数中对遍历的数组进行处理
* @type {*|jQuery}
*/
var res2 = $.each(obj,function (index,value) {
console.log(index,value);
}); console.log(res);
console.log(res2);
</script>
</head>
<body> </body>
</html>
10.JQuery其他静态方法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JQuery其他静态方法</title>
<script src="jquery-1.12.4.js"></script>
<script>
var str = " jQuery ";
/**
* 去掉字符串两端的空格
* 参数:需要处理的字符串
* 返回值:处理之后的字符串
* @type {*|jQuery}
*/
var res = $.trim(str);
console.log("---"+str+"---")
console.log("---"+res+"---")
/**
* 判断参数是不是window对象
* 返回值为布尔类型
* @type {*|jQuery}
*/
var res2 = $.isWindow(window);
console.log(res2) var arr = [1,3,5,7,9];
/**
* 判断参数是不是一个真数组
* 返回值为布尔类型
*/
var res3 = $.isArray(arr); //真数组返回true
console.log(res3);
/**
* 判断参数是不是一个函数
* @type {*|jQuery}
* !!!!注意:JQuery框架本质上就是一个函数
*/
var res4 = $.isFunction(function () {});
var res5 = $.isFunction(jQuery);
console.log(res4);
console.log(res5);
</script>
</head>
<body> </body>
</html>
11.静态方法-holdReady方法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>静态方法-holdReady方法</title>
<script src="jquery-1.12.4.js"></script>
<script>
/**
* 暂停入口函数的执行
* 参数为true时为暂停
* 参数为false时为回复
*/
$.holdReady(true);
$(function () {
alert("ready!");
});
</script>
</head>
<body>
<button>回复ready时间</button>
<script>
var btn = document.getElementsByTagName("button")[0];
btn.onclick = function () {
$.holdReady(false);
}
</script>
</body>
</html>





JQuery --- 第一期 (初识jQuery, JQuery核心函数和工具方法)的更多相关文章

  1. jQuery源码分析-03构造jQuery对象-源码结构和核心函数

    3. 构造jQuery对象 3.1源码结构 先看看总体结构,再做分解: (function( window, undefined ) { var jQuery = (function() { // 构 ...

  2. 【转】jQuery源码分析-03构造jQuery对象-源码结构和核心函数

    作者:nuysoft/高云 QQ:47214707 EMail:nuysoft@gmail.com 毕竟是边读边写,不对的地方请告诉我,多多交流共同进步.本章还未写完,完了会提交PDF. 前记: 想系 ...

  3. Jquery第一篇【介绍Jquery、回顾JavaScript代码、JS对象与JQ对象的区别】

    什么是Jquery? Jquey就是一款跨主流浏览器的JavaScript库,简化JavaScript对HTML操作 就是封装了JavaScript,能够简化我们写代码的一个JavaScript库 为 ...

  4. jquery 第一节 什么是jQuery

    简单来说,jQuery就是javascript的一个框架,也可以说是javascript的一个库.

  5. 解密jQuery内核 DOM操作的核心函数domManip

    domManip是什么 dom即Dom元素,Manip是Manipulate的缩写,连在一起就是Dom操作的意思. .domManip()是jQuery DOM操作的核心函数 对封装的节点操作做了参数 ...

  6. Jq_DOM元素方法跟JQuery 核心函数跟JQuery 事件方法

    JQuery DOM 元素 函数                            描述 .get()                           从队列中删除所有未运行的项目. .ind ...

  7. jQuery核心函数和静态方法

    jQuery核心函数 从jQuery文档中可以看出,jQuery核心函数一共3大类4小类 jQuery(callback) 当DOM加载完成后执行传入的回调函数 <script> $(fu ...

  8. Jquery核心函数

    在Jquery中,所有的DOM对象都将封装成Jquery对象,而且只有Jquery对象才能使用Jquery方法或者属性来执行相应的操作. 所以Jquery提供了一个可以将DOM对象封装成Jquery对 ...

  9. Jquery()核心函数的7个重载方法

    (1) jquery() 该函数返回一个空的jQuery对象.在jQuery1.4以后的版本中,改函数返回一个空的jQuery对象.在之后的版本中,该函数会返回一个包含document节点的对象. ( ...

随机推荐

  1. 创建第一个core项目(netCore学习笔记1)

    1.安装 core和netFramework其实是相对独立的,但是core的IDE是在vs2017才开始支持,而vs2017的安装环境必须搭配.net4.6,所以: Step1:安装.net4.6 S ...

  2. Object类的toString()方法总结

    1.java语言很多地方会默认调用对象的toString方法. 注:如果不重写toString方法,将会 使用Object的toString方法,其逻辑为  类名@散列码,toString方法是非常有 ...

  3. MongoDB安装与配置

    参考文档:MongoDB官方文档 版本:3.6.4 从版本3.6开始,MongoDB需要Windows Server 2008 R2,Windows 7或更高版本. 第一步,在下载中心下载最新版本的M ...

  4. Android的JDK、SDK、Eclipse的理解

    今天看了这方面的内容,感觉学到了一些东西: 首先,jdk是用来处理Java语言的, sdk是用来处理Java语言和硬件之间的关联的, eclipse是用来编写Java语言的, 通过对这方面的理解,加深 ...

  5. python 基础语法学习

    .注释 python单行注释以#开头 如:#!/usr/bin/env python3 #查找运行环境 多行注释有' ' '和" " " .python最具有特色的是使用 ...

  6. [TJOI2015] 棋盘

    Description 为了提高智商,ZJY去新世界旅游了.可是旅游过后的ZJY杯具的发现要打开通往原来世界的门,必须要解开门上面画的谜题.谜题是这样的:有个\(n\)行\(m\)列的棋盘,棋盘上可以 ...

  7. 【codeforces 698B】 Fix a Tree

    题目链接: http://codeforces.com/problemset/problem/698/B 题解: 还是比较简单的.因为每个节点只有一个父亲,可以直接建反图,保证出现的环中只有一条路径. ...

  8. BZOJ_1101_[POI2007]Zap_莫比乌斯反演

    题意:FGD正在破解一段密码,他需要回答很多类似的问题:对于给定的整数a,b和d,有多少正整数对x,y,满足x<=a ,y<=b,并且gcd(x,y)=d.作为FGD的同学,FGD希望得到 ...

  9. [Usaco2005 nov]Grazing on the Run 边跑边吃草 BZOJ1742

    分析: 首先,连续选择一段必定最优... 区间DP,f[i][j]表示从i开始,连续j个被吃掉了,并且,牛在i处,g[i][j]则表示在i+j-1处 f[i][j]可以从g[i+1][j]和f[i+1 ...

  10. java中的单例模式与静态类

    单例模式与静态类(一个类,所有方法为静态方法)是另一个非常有趣的问题,在<Java中有关单例模式的面试问题>博文中露掉了,由于单例模式和静态类都具有良好的访问性,它们之间有许多相似之处,例 ...