第208天:jQuery框架封装(一)】的更多相关文章

一.事件框架 1.DOM2 --事件流 事件流 :冒泡 捕获 1.1冒泡:事件按照从最特定的事件目标到最不特定的事件目标(document对象或者body)的顺序触发. 1.1.1浏览器兼容问题处理 如何去判断一个浏览器是否支持某个功能 其实就是判断对象是否拥有某个方法或者属性 if(dom.addEventListener ){ dom.addEventListener(type, fn, false); }else if(dom.attachEvent){ //如果支持 --IE // do…
模拟jQuery框架,利用原生的js技术,封装一个js框架,以加深对jQuery的常用api的使用和面向对象原理的理解:一:结构部分首先利用闭包,构造一个自执行函数,然后利用选择器函数Sizzle,获取dom元素:其后设置入口函数jQuery,返回一个F的实例:然后对jQuery.prototype进行设置:其后修改F的原型指向jQuery的原型,最后暴露出去两个接口$和jQuery:二:jQuery.fn.extend = jQuery.extend = function(){}通过向jQue…
一.jQuery的封装扩展 1.jQuery中extend方法使用 (挂在到jQuery和jQuery.fn两对象身上的使用) 1.1.官方文档定义: jQuery.extend   Merge the contents of two or more objects together into the first object.把两个或者多个对象合并到第一个对象当中: jQuery.fn.extend   Merge the contents of an object onto the jQue…
这个版本的JQuery是对上一个版本的JQuery,使用了require.js进行了二次封装,基本上把前面的每一个框架封装成为一个单独的模块,最终的目录结构如下: 由于代码量和目录比较多,这个封装好的代码和目录已经全部上传到GitHub上面,需要的同学可以前往下载哈. https://github.com/xiugangzhang/JavaScript-Xframe [main.js]这个是模块文件的主入口函数 /** * @Desc : 主要的功能模块展示 * @Author : xiugan…
整个封装过程及阅读JQuery源码的过程基本上持续了一个月吧,最终实现了一个大概30%的JQuery功能的框架版本,但是里面涉及的知识点也是非常多的,总共的代码加上相关的注释大概在3000行左右吧,但也只是对JQuery的里面的知识点了解了大概,后续希望能更深层次的理解JQuery里面涉及的知识点,从而写出高质量的代码,特此记录一下这一段时间学习的点滴. /* * @Author: 我爱科技论坛 * @Time: 20180722 * @Desc: 实现一个类似于JQuery功能的框架 * V…
运动框架 一.函数------单物体运动框架封装 1.基于时间的运动原理 动画时间进程 动画距离进程 图解: 物体从0移动到400 当物体移动到200的时候 走了50% 同样的,物体总共运行需要4秒 如果已经过了2.5秒,也表示走了50% 2.动画时间进程 运动公式: s= 总距离(最终的位置 -- 起始位置)X动画时间进程 代码实现: function move(){ /*计算现在的时间*/ var pass = +new Date(); var yongshi = pass - now; /…
Magicodes.WeiChat同时也致力于提高后台开发效率,因此对在后台前端这块也做了一定的封装.我们先来说说主要的框架JS——mwc.js和mwc_elements.js.这两个JS文件位于Scripts目录下的app目录: · mwc:前端框架定义,可以理解为接口定义 · mwc_elements:基于前端框架定义的具体实现 主要API功能如下: 1日志 日志函数用于向浏览器控制台输出日志信息,比如调试信息.警告信息.错误信息.灾难信息等等,兼容主流的浏览器.后续还会增强相关函数,目前只…
.ajax原理: Ajax的原理简单来说通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据,然后用javascript来操作DOM而更新页面.这其中最关键的一步就是从服务器获得请求数据.要清楚这个过程和原理,我们必须对 XMLHttpRequest有所了解. XMLHttpRequest是ajax的核心机制,它是在IE5中首先引入的,是一种支持异步请求的技术.简单的说,也就是javascript可以及时向服务器提出请求和处理响应,而不阻塞用户.达到无刷新的效果.    所…
这是一些分析jQuery框架的文字    面向的读者应具备以下要求 1.非常熟悉HTML 2.非常熟悉javascript语法知识 3.熟悉javascript面向对象方面的知识 4.熟练使用jQuery框架 言归正传! jQuery对象的初始化是写在匿名函数里的 就像这样: (function(){alert("jQuery框架分析")})(): 第一个括号是声明了一个函数,第二个括号是执行这个函数.也就是说,jQuery框架在页面载入的时候已经做了一些事情(这个个匿名函数已经被执行…
对Raphael画图标的一个jquery简单封装 公司要做一个项目的demo,要求地图上可以插红旗,所以就用到了Raphael. 因为是个demo,所以地图就用了一张图片,效果如下: 所以为了更好的封装一下这个功能,就写了一个简单的插件:jquery-pointpainter.js /** * @author Lee<br> * @since 2013-8-19 <br> */ (function($, Raphael) { $.fn.pointpainter = function…
第八章 jQuery框架Ajax模块 8.1 jQuery框架中的Ajax简介 Ajax技术的核心是XMLHTTPRequest对象,该对象是Ajax实现的关键,发送异步请求.接收服务器端的响应以及执行回调等操作都是通过XMLHTTPRequest对象来完成的. jQuery框架对Ajax操作进行了封装,在jQuery框架的Ajax模块中提供了很多方法用于网络编程.我们主要从Ajax网络请求.Ajax事件以及序列化等方面讲解. 8.2 jQuery框架中的Ajax网络请求 jQuery框架中为我…
第七章 jQuery框架的选择器 jQuery框架继承和优化了JavaScript访问DOM对象的特性,我们使用jQuery框架提供的api可以更加方便的操作DOM对象. 7.1 创建DOM节点 使用JavaScript原生方式创建DOM节点并添加到页面中的代码示例: //01 创建DOM节点 var oDiv = document.createElement("div"); //02 设置DOM节点的内容 oDiv.innerText = "测试的DIV标签";…
第六章 jQuery框架事件处理 JavaScript以事件驱动来实现页面的交互,其核心是以消息为基础,以事件来驱动.虽然利用传统的JavaScript事件处理方式也能够完成页面交互,但jQuery框架增加并扩展了基本的事件处理机制,jQuery框架提供了更加优雅的事件处理语法,并极大的增强了事件处理能力. 6.1 事件处理简单说明 jQuery框架在JavaScript的基础上进一步封装了不同类型的事件模型,形成了一套更强大和优雅的“jQuery事件模型”. jQuery中的事件模型表现出以下…
第五章 jQuery框架动画特效 5.1 jQuery动画特效说明 jQuery框架中为我们封装了众多的动画和特效方法,只需要调用对应的动画方法传递合适的参数,就能够方便的实现一些炫酷的效果,而且jQuery框架还支持自定义各种动画效果. jQuery中的动画效果主要有以下方法 ① 显示和隐藏动画② 展开和收起动画③ 淡入和淡出动画④ 自定义动画效果 5.2 显示和隐藏动画 jQuery框架中为我们提供了专门的方法来控制让标签显示或者是隐藏.标签的显示和隐藏在开发中相对来说是比较常见的操作,如果…
第二章 jQuery框架使用准备 2.1 jQuery框架和JavaScript加载模式对比 jQuery框架的加载模式 <script> window.onload = function () { console.log("window.onload——1") }; window.onload = function () { console.log("window.onload——2") } </script> 打印结果:window.on…
第一章 jQuery框架简单介绍 1.1 jQuery简介 jQuery是一款优秀的javaScript库(框架),该框架凭借简洁的语法和跨平台的兼容性,极大的简化了开发人员对HTML文档,DOM,事件以及Ajax的操作. 主旨口号:写的更少, 干的更多(以更少的代码,实现更多的功能) 1.2 作者和版本介绍 jQuery最早由约翰·雷西格(John Resig)于2006年1月的BarCamp NYC上发布第一个版本.目前由Dave Methvin领导的开发团队进行开发,是目前最受欢迎的Jav…
这是本人结合资料视频总结出来的jQuery大体框架结构,如果大家都熟悉了之后,相信你们也会写出看似高档的js框架: jquery框架的总体结构 (function(w, undefined){ //定义一些变量和函数 var //对外提供的接口 jQuery = function( selector, context ) { return new jQuery.fn.init( selector, context, rootjQuery ); }; //结jQuery对象添加一些方法和属性 //…
如何读源码 jQuery整体框架甚是复杂,也不易读懂.但是若想要在前端的路上走得更远.更好,研究分析前端的框架无疑是进阶路上必经之路.但是庞大的源码往往让我们不知道从何处开始下手.在很长的时间里我也被这种问题困扰着,自己也慢慢摸索到一个比较不错的看源码的“姿势”. 一定不推荐的就是拿到源码直接开始啃,首先我们一定要对这个框架的整体的架构有一定的了解,每个模块之间的联系是怎样的: 然后找一找有没有关于源码分析的书籍,如果有的话那么恭喜你了,你可以直接跟着书的思路开始看源码: 如果没有框架源码分析相…
jQuery框架学习第一天:开始认识jQueryjQuery框架学习第二天:jQuery中万能的选择器jQuery框架学习第三天:如何管理jQuery包装集 jQuery框架学习第四天:使用jQuery操作元素的属性与样式jQuery框架学习第五天:事件与事件对象jQuery框架学习第六天:jQuery中的Ajax应用jQuery框架学习第七天:jQuery动画–jQuery让页面动起来! jQuery框架学习第八天:ASP.NET jQuery实施方案jQuery框架学习第九天:jQuery工…
1.测试页面; <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>手写jQuery框架</title> <style type="text/css"> *{margin: 0px;padding: 0px;font-family: "微软雅黑";} .bo…
window常用属性: History:有关客户访问过的URL的信息 Location: 有关当前url的信息 常用方法: Confirm()将弹出一个确认对话框 open()在页面上弹出一个新的浏览器 Close()用于关闭窗口 history对象 Back() 加载 history 对象列表中前一个URL Forward()加载history对象列表中的后一个URL go()加载history对象列表中的某个具体URL location对象 属性:host 设置或返回主机名和当前URL的端口…
8.8 JQuery框架 一.JQuery是一个javascript的框架,是对javascript的一种封装. 通过JQuery可以非常方便的操作html的元素\要使用Jquery需要导入一个第三方的javascript库 jquery.min.js, 与javascript通过id获取元素节点的方式(document.getElementById )不同 需要注意的是,通过 document.getElementById 获取到的是 DOM里的 元素节点JQuery通过$("#id"…
JQuery 是一个兼容多浏览器支持的JavaScript库,其核心理念是write less,do more(写得更少,做得更多),它是轻量级的js库,兼容CSS3还兼容各种浏览器,需要注意的是后续版本将不再支持IE6/7/8浏览器,jQuery使用户能更方便地处理HTML.events.实现动画效果,并且方便地为网站提供AJAX交互,jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择,jQuery能够使用户的html页面保持代码和h…
现在Jquery框架对于开发人员基本上是无人不知,无人不晓了,用起来十分的方便,特别是选择器十分强大,提高了我们的开发速度.但是好多人也只是停留在了会用的基础上,我个人觉得会用一个框架不算什么,只能说明你对那个框架比较熟悉,知道里面的思想和实现才是王道.有好多大牛对Jquery框架进行了剖析,今天我只是根据我的见解来分析一下. 一段代码如下: (function (win) { var _$ = function (selector, context) { return new _$.proto…
我的jQuery版本为1.7* 这个版本代码比之前的版本优化了很多,结构也清晰了不少,就用最新的吧. 打开jQuery源代码 首先你能看到所有代码被一个 (function(window,undefined){ })(window) 这是个什么东西.. 首先,这是一个匿名函数(不懂?那就先去谷歌下吧): 其次,这是一个自调用匿名函数: 这段代码做了三件事 第一件:创建一个只给jQuery用的空间,我们估且就叫 “私有空间”,与C++的命名空间很相似,为了保证jQuery不与其他JavaScrip…
概述 在android开发中经常要访问网络,目前最流行的网络访问框架就是Okhttp了,然而我们在具体使用时,往往仍然需要二次封装.我使用Builder设计模式进行了封装形成oknet开源库. 介绍 oknet是一套基于okhttp的android网络http框架,封装了请求参数处理,日志打印. Github地址 https://github.com/vir56k/oknet 特性 1.简洁的语法 2.支持自定义处理 message code 不等于0 的情形 3.支持文件上传 4.完整清晰的l…
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>作业</title> <!--导入jQuery框架--> <script src="jQuery/jquery-3.1.0.min.js"></script> <script src="javascript/index.js&…
问题描述:当引用了jquery框架后,页面的js不能正常工作. 后面我的解决办法:是因为在引用 jquery的框架时的代码为 <script type="text/javascript" src="resources/js/jquery/jquery-1.9.1.min.js" /> 改为如下的引用方式 <script type="text/javascript" src="resources/js/jquery/jq…
九.工具类,启动所有远程服务的浏览器 在utils包中创建java类:LaunchAllRemoteBrowsers package com.lingfeng.utils; import java.net.MalformedURLException; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Map.Entry; import java.util.Set;…
一.设计思路 在国内市场上,IE内核的浏览器占据了绝大部分的市场份额,那么此次框架封装将进行IE系列的浏览器进行多线程并发执行分布式测试的封装. 运行时主进程与多线程关系如下:…