简略的前端架构心得&&基于editor为例子的编码小技巧


Posted in Javascript onNovember 25, 2010

比较粗糙简略。感兴趣的同学可以看看。稍微贴下主要内容吧:
简略的前端架构心得&&基于editor为例子的编码小技巧
这是第一份ppt主要的内容。具体东西我就不多贴了,对这几个方面感兴趣的同学可以下载来看看,既然是基于editor为例子的ppt,这里我也附上一个简单的利用execCommand命令做的简易的demo,editor的原理在demo里都能看出来。这里附上代码:
<!doctype html>

<html> 
<head> 
<style type="text/css"> 
.wp { 
width: 500px; 
} 
.bar { 
margin-bottom: 8px; 
} 
.con { 
border: 2px solid #ccc; 
} 
.block { 
overflow: hidden; 
height: 1%; 
} 
.controler { 
float: left; 
margin-right: 6px; 
border: 1px solid #999; 
height: 20px; 
width: 20px; 
text-align: center; 
font-size: 14px; 
font-weight: bold; 
} 
</style> 
</head> 
<body> 
<script type="text/javascript"> 
var Class = { 
create : function () { 
return function () { 
this.init.apply(this, arguments); 
} 
} 
}, 
H$ = function(i) {return document.getElementById(i)}, 
$CE = function() { 
var div = document.createElement('div'); 
return function(html) { 
div.innerHTML = html; 
var el = div.childNodes[0]; 
div.removeChild(el); 
return el; 
} 
} (); 
var Editor = Class.create(); 
Editor.prototype = { 
init : function(id) { 
var c = []; 
c[0] = ['bold', 'B']; 
c[1] = ['italic', 'I']; 
this.t = H$(id); 
this.t.style['display'] = 'none'; 
this.i = $CE('<iframe frameBorder="0" width="500" height="200"></iframe>'); 
var wp = $CE('<div class="wp"></div>'), 
bar = $CE('<div class="bar block"></div>'), 
con = $CE('<div class="con"></div>'), 
self = this; 
for (var i=0; i<c.length; i++) { 
var btn = $CE('<a class="controler">'+c[i][1]+'</a>'); 
bar.appendChild(btn); 
btn.onclick = (function(i){ 
return function () { 
self.action(c[i][0]); 
} 
})(i); 
if (!+"\v1") {btn.unselectable = 'on'} // IE下一定要设置unselectable = 'on' 
} 
this.t.parentNode.insertBefore(wp, this.t); 
con.appendChild(this.t); 
con.appendChild(this.i); 
wp.appendChild(bar); 
wp.appendChild(con); 
this.e = this.i.contentWindow.document || this.i.contentDocument; 
this.e.designMode = 'on'; 
this.e.open(); 
this.e.close(); 
}, 
action : function (cmd, val) { 
this.e.execCommand(cmd, 0, val || null); 
} 
} 
</script> 
<textarea id="test"></textarea> 
<script type="text/javascript"> 
new Editor('test'); 
</script> 
</body> 
</html>

大家可以自行考到本地去演示,很简单的一个例子,提供一个思路而已。
下面提供第一个ppt的下载: 【点击这里下载《关于js的一些小技巧》】

【阿里中国站前端架构史--略谈】
以下为ppt部分内容:
简略的前端架构心得&amp;&amp;基于editor为例子的编码小技巧简略的前端架构心得&amp;&amp;基于editor为例子的编码小技巧

感兴趣的同学可以看看。
文件打包下载地址

Javascript 相关文章推荐
JS 日期验证正则附asp日期格式化函数
Sep 11 Javascript
Js动态添加复选框Checkbox的实例方法
Apr 08 Javascript
开启Javascript中apply、call、bind的用法之旅模式
Oct 28 Javascript
学习JavaScript设计模式(单例模式)
Nov 26 Javascript
Google 地图叠加层实例讲解
Aug 06 Javascript
AngularJS路由删除#符号解决的办法
Sep 28 Javascript
vue 父组件调用子组件方法及事件
Mar 29 Javascript
详解可以用在VS Code中的正则表达式小技巧
May 14 Javascript
微信小程序云开发如何使用npm安装依赖
May 18 Javascript
微信小程序前端自定义分享的实现方法
Jun 13 Javascript
layui+SSM的数据表的增删改实例(利用弹框添加、修改)
Sep 27 Javascript
vue下载二进制流图片操作
Oct 26 Javascript
javascript showModalDialog 内跳转页面的问题
Nov 25 #Javascript
颜色选择器 Color Picker,IE,Firefox,Opera,Safar
Nov 25 #Javascript
jQuery 选择器、DOM操作、事件、动画
Nov 25 #Javascript
jQuery学习基础知识小结
Nov 25 #Javascript
javascript预览上传图片发现的问题的解决方法
Nov 25 #Javascript
juqery 学习之三 选择器 子元素与表单
Nov 25 #Javascript
juqery 学习之三 选择器 可见性 元素属性
Nov 25 #Javascript
You might like
真正面向对象编程:PHP5.01发布
2006/10/09 PHP
用php实现像JSP,ASP里Application那样的全局变量
2007/01/12 PHP
Ajax PHP简单入门教程代码
2008/04/25 PHP
PHP生成随机字符串(3种方法)
2015/09/25 PHP
laravel框架数据库配置及操作数据库示例
2019/10/10 PHP
jquery select(列表)的操作(取值/赋值)
2009/08/06 Javascript
关于flash遮盖div浮动层的解决方法
2010/07/17 Javascript
jQuery scroll事件实现监控滚动条分页示例
2014/04/04 Javascript
js读取json文件片段中的数据实例
2017/03/09 Javascript
jQuery ajax实现省市县三级联动
2021/03/07 Javascript
js清除浏览器缓存的几种方法
2017/03/15 Javascript
Vue自定义事件(详解)
2017/08/19 Javascript
vue实现城市列表选择功能
2018/07/16 Javascript
node 文件上传接口的转发的实现
2019/09/23 Javascript
vue+axios实现post文件下载
2019/09/25 Javascript
Python获取Linux系统下的本机IP地址代码分享
2014/11/07 Python
Python的多维空数组赋值方法
2018/04/13 Python
python 查找文件名包含指定字符串的方法
2018/06/05 Python
python 制作自定义包并安装到系统目录的方法
2018/10/27 Python
python 环境搭建 及python-3.4.4的下载和安装过程
2019/07/20 Python
python lambda表达式(匿名函数)写法解析
2019/09/16 Python
pytorch AvgPool2d函数使用详解
2020/01/03 Python
如何配置关联Python 解释器 Anaconda的教程(图解)
2020/04/30 Python
阿玛尼美妆加拿大官方商城:Giorgio Armani Beauty加拿大
2017/10/24 全球购物
香港百佳网上超级市场:PARKNSHOP.com
2020/06/10 全球购物
医药营销专业个人自荐信
2013/09/29 职场文书
校园餐饮创业计划书
2014/01/10 职场文书
妇联主席先进事迹
2014/05/18 职场文书
交通安全标语
2014/06/06 职场文书
软弱涣散基层党组织整改方案
2014/10/25 职场文书
教师业务学习材料
2014/12/16 职场文书
2015年教师自我评价范文
2015/03/04 职场文书
个人专业技术总结
2015/03/05 职场文书
会计试用期自我评价
2015/03/10 职场文书
2016年植树节红领巾广播稿
2015/12/17 职场文书
MySQL数据库必备之条件查询语句
2021/10/15 MySQL