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的一点小代码的更多相关文章

  1. Javascript中window.opener的一点小总结

    以前一直认为window.opener只有在window.open方法打开下的窗口才可以访问,没想到即使是a链接打开的页面的照样可以访问.window.opener指向父窗口,也就是来源窗口.可以利用 ...

  2. jquery框架一点小心得

    下面的小事例 主要实现了 一和按ID查找,并获取元素的 value 或 标签内容和一个去字符串空格的小功能能 假设元素id=“myid”: 获取标签内容$("myid").html ...

  3. JQuery Mobile 的引用代码,以及在手机浏览器上字体太小的解决办法

    JQuery Mobile 的引用代码: <link rel="stylesheet" href="http://code.jquery.com/mobile/1. ...

  4. 用jquery实现抽奖小程序

    用jquery实现抽奖小程序 这些日子,到处都可以看到关于微信小程序的新闻或报到,在博客园中写关于微信小程序的也不少.但是今天我要说的不是微信小程序,而是用简单的jquery写的一个好玩的抽奖小程序. ...

  5. 编写Javascript类库(jQuery版

    编写Javascript类库(jQuery版) - 进阶者系列 - 学习者系列文章 Posted on 2014-11-13 09:29 lzhdim 阅读(653) 评论(1) 编辑 收藏 本系列文 ...

  6. pace.js和NProgress.js两个加载进度插件的一点小总结

    这两个插件都是关于加载进度动画的,应该说各有特点吧,最起码对我来说是各有优势的.今天一天就捣鼓了加载进度动画,也研究了大量的(也就这两个)加载进度动画,也算对加载进度动画有了一个初步的了解了吧. NP ...

  7. 用jQuery动态添加小广告

    网站的时候,有些网站总是在右下角,左上角或者其他地方投放广告. 我用jQuery试着自己做了一个,代码如下,如有不对的地方请各位不吝赐教 <!DOCTYPE html> <html ...

  8. jquery抓娃娃机代码

    <html><head><title>jQuery抓娃娃机游戏代码 - 源码之家</title><meta name="content- ...

  9. 基于jquery下拉列表树插件代码

    分享一款基于jquery下拉列表树插件代码.这是一款实用的jquery 树形下拉框 下拉树代码下载.效果图如下: 在线预览   源码下载 实现的代码. html代码: <table width= ...

随机推荐

  1. 你了解System.out.println()的真正含义吗?

    在Java编程中,我们常常用 System.out.println(); 来输出字符串,也许我们都已经猜到println()是方法名,但System是什么,out又是什么呢? 其实System是jav ...

  2. 【linux】umask

    1.默认情况下的umask值是022 [root@andon ~]# umask 0022  2.umask作用 默认文件权限:666(linux创建文件默认无执行权限)-umask =644(6-0 ...

  3. C# .NET MVC 接收 JSON ,POST,WCF 无缝隙切换

    用来与HTTP 模式的WCF 无缝隙切换. 服务端是MVC. 在Home/About 上面加 [HttpPost].读取Request.InputStream 中所有内容.然后返回JSON给客户端:r ...

  4. python之pexpect模块

    最近在看<Python自动化运维技术与最佳实战>这本书,学到了一个运维中用到的模块:pexpect 下面是其定义: Pexpect 是一个用来启动子程序并对其进行自动控制的 Python ...

  5. ORACLE Instant Client 配置

    http://www.oracle.com/technetwork/cn/database/features/instant-client/index-092699-zhs.html 在官网下载对应的 ...

  6. 《黄聪:手机移动站SEO优化教程》2、PC端和手机移动端SEO优化区别

    视频地址:http://v.youku.com/v_show/id_XNzE2ODcxNjM2.html

  7. DBA_Oracle Erp版本升级12.1.1到R12.1.3(案例)

    20150506 Created By BaoXinjian

  8. PLSQL_性能优化系列12_Oracle Index Anaylsis索引分析

    2014-10-04 Created By BaoXinjian

  9. NeHe OpenGL教程 第二十七课:影子

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  10. vim 学习日志(2):set的使用方法

    一,打开或关闭行号(number) 如果希望每次进入vi 会话时都显示行号,那么在主目录中的.exrc 文件中添加 set number 行. 在命令模式下,使用如下命令 :set all      ...