JavaScript链式编程模拟Jquery函数

 1 <span>Hello,World!</span>
 2 <script type="text/javascript">
 3     Jq = function (tagName) {
 4         var tagArr = document.getElementsByTagName(tagName);
 5         var ret = {
 6             tag: tagArr,
 7             css: function (attribute, value) {
 8                 for (var i = 0; i < this.tag.length; i++) {
 9                     this.tag[i].style[attribute] = value;
10                 }
11                 return this;
12             }
13         }
14         return ret;
15     }
16
17     window.onload = function () {
18         Jq("span").css("color", "red")
19                   .css("border", "1px solid green")
20                   .css("padding", "10px");
21     }
22 </script>
时间: 2024-10-16 12:42:40

JavaScript链式编程模拟Jquery函数的相关文章

jQuery插件编写及链式编程模型

jQuery插件编写及链式编程模型小结 JQuery极大的提高了我们编写JavaScript的效率,让我们可以愉快的编写代码,做出各种特效.大多数情况下,我们都是使用别人开发的JQuery插件,今天我们就来看看如何把我们常用的功能做出JQuery插件,然后像使用jQuery那样来操作DOM.  一.jQuery插件开发快速上手 1.jQuery插件模板 关于jQuery插件的编写,我们可以通过为jQuery.fn增加一个新的函数来编写jQuery插件.属性的名字就是你的插件的名字,其模板如下:

jQuery——链式编程与隐式迭代

链式编程 1.原理:return this; 2.通常情况下,只有设置操作才能把链式编程延续下去.因为获取操作的时候,会返回获取到的相应的值,无法返回 this. 3.end():结束当前链最近的一次过滤操作,并且返回匹配元素之前的状态. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title

JavaScript系列:模块化与链式编程

模块化:闭包和和函数作用域(JS没有块级作用域ES6之前)构造模块 1 var man=function(){ 2 var age=12; 3 return { 4 getYear:function(){ 5 return age; 6 }, 7 setYear:function(n){ 8 age=n; 9 } 10 } 11 } 12 13 var peter=man(); 14 document.write(peter.getYear()); //12 15 peter.setYear(2

原生JS实现jquery的链式编程。

这是我根据之前遇到的一个面试题,题目:用原生JS实现$("#ct").on("click",fn).attr("id"). 然后看了篇jquery源码分析(http://www.cnblogs.com/aaronjs/p/3279314.html),自己写出来的一个实现,选择器用的querySelector,关于链式编程也只是返回this而已,这也算是自己看jquery源码解决的第一个问题吧,继续加油. 现在想来当年面试官确实没说错,我jquer

jQuery的链式编程和隐式迭代

1.链式编程 链式编程示例: .html('v').text('v'); 注意:$('div').html('设置值').val('设置值');这样可以,但是$('div').html().text();这样是不对的,因为获取值时返回的是获取的字符串,而不是对象本身,所以不能链式编程. "破坏链"的问题 链式编程的时候一定要注意在什么时候"破坏"了链,当前对象的传递,如果传递被破坏,则继续链式编程会有意想不到的结果. nextAll() prevAll() sibi

JQuery的链式编程,隐式迭代是啥意思?

链式编程 1.好处 "一句话,链式编程可以省去很多重复的代码." 这话什么意思呢?举个例子. /*设置obj对象的两个属性*/ //普通做法是这样的 obj.name = '小明'; obj.age =  155: //链式编程是这样的. obj.name('小明').age(15); 2.注意 链式编程注意: $('div').html('设置值').val('设置值');这样是可以的. 但是$('div').html().text()这样是不对的,因为获取值时返回的是获取的字符串而

[jQuery]jQuery链式编程(六)

链式编程 节约代码量 <button>快速</button> <button>快速</button> <button>快速</button> <button>快速</button> <button>快速</button> <button>快速</button> <button>快速</button> <script> $(fun

数往知来 JQuery_选择器_隐式迭代_链式编程 &lt;二十&gt;

一.通过js实现页面加载完毕执行代码的方式与jquery的区别 1.通过jquery的方式可以 让多个方法被执行,而通过window.onload的方式只能执行最后一个, 因为最后一次注册的方法会把前面的方法覆盖掉 1. window.onload需要等待页面的所有元素资源比如说img里的图片一些连接等等都下载完毕后才会触发: 2. 而jquery只要页面的标签元素都下载完毕就会触发了 二.$.map(数组,function(ele,index){})函数对数组进行遍历,遍历之后会返回一个新的数

iOS开发技巧系列---使用链式编程和Block来实现UIAlertView

UIAlertView是iOS开发过程中最常用的控件之一,是提醒用户做出选择最主要的工具.在iOS8及后来的系统中,苹果更推荐使用UIAlertController来代替UIAlertView.所以本文也并不提倡开发者再使用UIAlertView,本文的目的是探讨如何将原来的给变量赋值和通过Delete来回调的方式变成链式编程风格和通过Block来回调.通过学习对UIAlertView的改造让各位iOS开发者能够学会这种更加便捷的开发方式 什么是链式编程 对于有一定开发经验的开发者来说,链式编程