JavaScript自己模仿jQuery的一点小代码
function seter(sId) {
var obj = document.getElementById(sId);
return new function () {
var objN = obj;
this.html = function (sHtml) {
objN.innerHTML = sHtml;
};
};
}
这样的代码有怎样的作用呢?
假如HTML代码中有如下的内容:
<div id="ShowID"></div>
当我们需要改变这个div内部的内容的时候,我们一般的做法是:
var o=document.getElementById("ShowID");
o.innerHTML="新代码";
而我们使用jQuery的时候是这样的:
$("#ShowID").html("新代码");
而使用我的这个代码,就是这样的:
seter("ShowID").html("新代码");
可以看到方法基本一致。
模仿的就是jQuery的原理,包装。
我的实现思路基本上就是根据获得的id获取这个对象,然后将这个对象传给一个包含对这个对象的引用的匿名函数,通过闭包的性质,可以创建一个针对该对象的函数类。
语言描述不够好,请包涵。
JavaScript自己模仿jQuery的一点小代码的更多相关文章
- Javascript中window.opener的一点小总结
以前一直认为window.opener只有在window.open方法打开下的窗口才可以访问,没想到即使是a链接打开的页面的照样可以访问.window.opener指向父窗口,也就是来源窗口.可以利用 ...
- jquery框架一点小心得
下面的小事例 主要实现了 一和按ID查找,并获取元素的 value 或 标签内容和一个去字符串空格的小功能能 假设元素id=“myid”: 获取标签内容$("myid").html ...
- JQuery Mobile 的引用代码,以及在手机浏览器上字体太小的解决办法
JQuery Mobile 的引用代码: <link rel="stylesheet" href="http://code.jquery.com/mobile/1. ...
- 用jquery实现抽奖小程序
用jquery实现抽奖小程序 这些日子,到处都可以看到关于微信小程序的新闻或报到,在博客园中写关于微信小程序的也不少.但是今天我要说的不是微信小程序,而是用简单的jquery写的一个好玩的抽奖小程序. ...
- 编写Javascript类库(jQuery版
编写Javascript类库(jQuery版) - 进阶者系列 - 学习者系列文章 Posted on 2014-11-13 09:29 lzhdim 阅读(653) 评论(1) 编辑 收藏 本系列文 ...
- pace.js和NProgress.js两个加载进度插件的一点小总结
这两个插件都是关于加载进度动画的,应该说各有特点吧,最起码对我来说是各有优势的.今天一天就捣鼓了加载进度动画,也研究了大量的(也就这两个)加载进度动画,也算对加载进度动画有了一个初步的了解了吧. NP ...
- 用jQuery动态添加小广告
网站的时候,有些网站总是在右下角,左上角或者其他地方投放广告. 我用jQuery试着自己做了一个,代码如下,如有不对的地方请各位不吝赐教 <!DOCTYPE html> <html ...
- jquery抓娃娃机代码
<html><head><title>jQuery抓娃娃机游戏代码 - 源码之家</title><meta name="content- ...
- 基于jquery下拉列表树插件代码
分享一款基于jquery下拉列表树插件代码.这是一款实用的jquery 树形下拉框 下拉树代码下载.效果图如下: 在线预览 源码下载 实现的代码. html代码: <table width= ...
随机推荐
- log4j日志的打印
1.加入日志属性文件 log4j.properties log4j.rootLogger=DEBUG,Console,fileout log4j.appender.Console=org.apache ...
- Hibernate3回顾-3-Session管理
3.Session管理 仅为个人理解.请指正 3.1背景 由于Configuration的创建耗费系统的资源.所以有必要只将Configuration实例化一次,之后通过SessionFactory获 ...
- docker配置环境
debian: curl -sSL https://get.docker.com/ | sh curl -sSL https://get.daocloud.io/docker | sh daoclou ...
- android 开源项目一览
直接拿来用!最火的Android开源项目(一) http://www.csdn.net/article/2013-05-03/2815127-Android-open-source-projects ...
- 【MySQL】索引长度的一些限制
有同学问到InnoDB的索引长度问题,简单说几个tips. MySQL的每个单表中所创建的索引长度是有限制的,且对不同存储引擎下的表有不同的限制. myisam表,单列索引,最大长度不能超过 1000 ...
- iphone dev 入门实例2:Pass Data Between View Controllers using segue
Assigning View Controller Class In the first tutorial, we simply create a view controller that serve ...
- canvas刮刮乐
这周有点迷茫,不知道干嘛了,一天天就过去了!我在博客右侧公告栏加了qq交流,各位有好的主题,或者有趣的技术,欢迎交流!今天突发奇想,就写了2个h5 canvas的demo玩玩! demo一:刮刮乐 舍 ...
- POJ 3368 Frequent values RMQ 训练指南 好题
#include<cstdio> #include<cstring> ; const int inf=0x3f3f3f3f; inline int max(int x,int ...
- c++学习-继承
继承 #include <iostream> using namespace std; class father{ public: void getHeight(){cout<< ...
- python (7)读取整个目录的所有文件夹并存入
一,提取出来一个文件夹中的所有文件名并存入到txt文件中 import os import sys reload(sys) sys.setdefaultencoding('utf-8') path = ...