工作之中的不足,报了js培训班,因为工作加班原因缺了几天课(js组件开发),现在拾起来补补

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="智能社 - zhinengshe.com" />
<meta name="copyright" content="智能社 - zhinengshe.com" />
<title>智能社 - www.zhinengshe.com</title>
<!-- 写组件的步骤:
先布局 写css
创建元素 插入到指定位置
添加事件
联动
隐藏系统元素
封装
js
css -->
<script src="myRadio.js"></script>
<script>
//var added = true;
window.onload = function(){
myRadio("sex");
myRadio("city");
};
</script>
</head>
<body> <form id="form1" action="http://www.zhinengshe.com/" > <input type="radio" name="sex" value="male"/>男
<input type="radio" name="sex" value="female"/>女
<input type="radio" name="sex" value="unknow" />未知
<br />
<input type="radio" name="city" value="city1"/>city1
<input type="radio" name="city" value="city2"/>city2
<input type="radio" name="city" value="city3" />city3
<input type="submit"/>
</form> </body>
</html>
//版权 北京智能社©, 保留所有权利
(function(){
var added = false;
console.log('');
window.myRadio = function (name){ var aRadio = document.getElementsByName(name); var aSpan = [];
//创建span
for(var i = ; i < aRadio.length; i++){
var oSpan = document.createElement("span");
aSpan.push(oSpan);
oSpan.className = "my_radio";
aRadio[i].parentNode.insertBefore(oSpan,aRadio[i]); (function(index){
oSpan.onclick = function(){
for(var i = ; i < aSpan.length; i++){
aSpan[i].className = "my_radio";
}
this.className = "my_radio_active";
aRadio[index].checked = true;
};
})(i); aRadio[i].style.display = "none";
}
console.log('aaaaaa');
if(added) return;
console.log('');
added = true;
console.log('');
var oLink = document.createElement("link");
oLink.rel = "stylesheet";
oLink.href = "myRadio.css";
var oHead = document.getElementsByTagName("head")[];
oHead.appendChild(oLink); } })();

js组件的写法的更多相关文章

  1. js 组件的写法

    var Test1 = function(){ var name = ""; this.setName = function(username){ name = username; ...

  2. JS组件系列——BootstrapTable+KnockoutJS实现增删改查解决方案(一)

    前言:出于某种原因,需要学习下Knockout.js,这个组件很早前听说过,但一直没尝试使用,这两天学习了下,觉得它真心不错,双向绑定的机制简直太爽了.今天打算结合bootstrapTable和Kno ...

  3. JS组件系列——BootstrapTable 行内编辑解决方案:x-editable

    前言:之前介绍bootstrapTable组件的时候有提到它的行内编辑功能,只不过为了展示功能,将此一笔带过了,罪过罪过!最近项目里面还是打算将行内编辑用起来,于是再次研究了下x-editable组件 ...

  4. 移动web端的react.js组件化方案

     背景: 随着互联网世界的兴起,web前端开发的方式越来越多,出现了很多种场景开发的前端架构体系,也对前端的要求日益增高,早已经不是靠一个JQuery.js来做前端页面的时代了,而今移动端变化最大,近 ...

  5. vue.js组件化开发实践

    前言 公司目前制作一个H5活动,特别是有一定统一结构的活动,都要码一个重复的轮子.后来接到一个基于模板的活动设计系统的需求,便有了下面的内容.借油开车. 组件化 需求一到,接就是怎么实现,技术选型自然 ...

  6. JS组件系列——封装自己的JS组件,你也可以

    前言:之前分享了那么多bootstrap组件的使用经验,这篇博主打算研究下JS组件的扩展和封装,我们来感受下JQuery为我们提供$.Extend的神奇,看看我们怎么自定义自己的组件,比如我们想扩展一 ...

  7. JS组件系列——表格组件神器:bootstrap table(三:终结篇,最后的干货福利)

    前言:前面介绍了两篇关于bootstrap table的基础用法,这章我们继续来看看它比较常用的一些功能,来个终结篇吧,毛爷爷告诉我们做事要有始有终~~bootstrap table这东西要想所有功能 ...

  8. JS组件系列——Form表单验证神器: BootstrapValidator

    前言:做Web开发的我们,表单验证是再常见不过的需求了.友好的错误提示能增加用户体验.博主搜索bootstrap表单验证,搜到的结果大部分都是文中的主题:bootstrapvalidator.今天就来 ...

  9. JS组件系列——分享自己封装的Bootstrap树形组件:jqTree

    前言:之前的一篇介绍了下如何封装自己的组件,这篇再次来体验下自己封装组件的乐趣.看过博主博客的园友应该记得之前分享过一篇树形菜单的使用JS组件系列——Bootstrap 树控件使用经验分享,这篇里面第 ...

随机推荐

  1. 面向对象之(非)绑定方法,反射,isinstance与issubclass

    isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查obj是否是类 cls 的对象 class Foo(object): pa ...

  2. stm32 ADC使用方法

    void Adc_Init(void) { ADC_InitTypeDef ADC_InitStructure; GPIO_InitTypeDef GPIO_InitStructure; RCC_AP ...

  3. python 获取文件的修改时间

    os.path.getmtime(name) #获取文件的修改时间 os.stat(path).st_mtime#获取文件的修改时间 os.stat(path).st_ctime #获取文件修改时间 ...

  4. python 元组转字符串

    tup = ('e', 'x', 'e', 'r', 'c', 'i', 's', 'e', 's') str = ''.join(tup) print(str)

  5. shell case语句

    case 格式 case 值 in 模式1) command1 command2 ... commandN ;; 模式2) command1 command2 ... commandN ;; esac ...

  6. Django 综合篇

    前面,已经将Django最主要的五大系统介绍完毕,除了这些主要章节,还有很多比较重要的内容,比如开发流程相关.安全.本地化与国际化.常见工具和一些框架核心功能.这些内容的篇幅都不大,但整合起来也是Dj ...

  7. VcCallC#_01

    1.C# 代码: using System; using System.Collections.Generic; //using System.Linq; using System.Text; //u ...

  8. [调试][程序打印]当printf不能用时,使用C++的不定参数来搞定OutputDebugString打印

    void _trace( char* str , ...) //类似printf{ va_list vlist; va_start(vlist , str ); char a [100] ; vspr ...

  9. 【Robot Framework 项目实战 01】使用 RequestsLibrary 进行接口测试

    写在前面 本文我们一起来学习如何使用Robot Framework 的RequestsLibrary库,涉及POST.GET接口测试,RF用例分层封装设计等内容. 接口 接口测试是我们最常见的测试类型 ...

  10. HTTP请求GET/POST查看工具

    当你有一个http的get请求需要知道结果,可以直接在浏览器上输入,然后等待查看结果.    那如果是一个post请求呢?推荐使用一个国外工具Send HTTP Tool.    传送门:http:/ ...