简略的前端架构心得&&基于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 相关文章推荐
jquery中使用循环下拉菜单示例代码
Sep 24 Javascript
js实现延迟加载的方法
Jun 24 Javascript
JavaScript实现自动消除按钮功能的方法
Aug 05 Javascript
jQuery入门之层次选择器实例简析
Dec 11 Javascript
一个仿微博登陆邮箱提示框js开发案例
Jul 28 Javascript
Radio 单选JS动态添加的选项onchange事件无效的解决方法
Dec 12 Javascript
vue中如何实现变量和字符串拼接
Jun 19 Javascript
微信小程使用swiper组件实现图片轮播切换显示功能【附源码下载】
Dec 12 Javascript
详解在HTTPS 项目中使用百度地图 API
Apr 26 Javascript
jQuery 筛选器简单操作示例
Oct 02 jQuery
Vue filter 过滤器、以及在table中的使用介绍
Sep 07 Javascript
LayUI+Shiro实现动态菜单并记住菜单收展的示例
May 06 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
Re:从零开始的异世界生活 第2季 开播啦
2020/07/24 日漫
thinkphp视图模型查询提示ERR: 1146:Table 'db.pr_order_view' doesn't exist的解决方法
2014/10/30 PHP
php通过分类列表产生分类树数组的方法
2015/04/20 PHP
YII动态模型(动态表名)支持分析
2016/03/29 PHP
PHP+Ajax实现上传文件进度条动态显示进度功能
2018/06/04 PHP
Stop SQL Server
2007/06/21 Javascript
js 表单验证方法(实用)
2009/04/28 Javascript
深入理解javascript中的立即执行函数(function(){…})()
2014/06/12 Javascript
jQuery 仿百度输入标签插件附效果图
2014/07/04 Javascript
基于jQuery倾斜打开侧边栏菜单特效代码
2015/09/15 Javascript
自己动手制作基于jQuery的Web页面加载进度条插件
2016/06/03 Javascript
JS中的进制转换以及作用
2016/06/26 Javascript
AngularJS 依赖注入详解及示例代码
2016/08/17 Javascript
vue.js指令和组件详细介绍及实例
2017/04/06 Javascript
详解vue过滤器在v2.0版本用法
2017/06/01 Javascript
JavaScript高级函数应用之分时函数实例分析
2018/08/03 Javascript
微信小程序使用websocket通讯的demo,含前后端代码,亲测可用
2019/05/22 Javascript
Vue插件之滑动验证码用法详解
2020/04/05 Javascript
[36:13]Mineski vs iG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python中模块与包有相同名字的处理方法
2017/05/05 Python
使用Python爬取最好大学网大学排名
2018/02/24 Python
Python3从零开始搭建一个语音对话机器人的实现
2019/08/23 Python
pandas中遍历dataframe的每一个元素的实现
2019/10/23 Python
TensorFlow实现从txt文件读取数据
2020/02/05 Python
python 获取剪切板内容的两种方法
2020/11/28 Python
socket.io 和canvas 实现的共享画板功能
2019/05/22 HTML / CSS
美国瑜伽品牌:Gaiam
2017/10/31 全球购物
大学生的四年学习自我评价
2013/12/13 职场文书
yy生日主持词
2014/03/20 职场文书
毕业生工作求职信
2014/06/30 职场文书
2015毕业生自我评价范文
2015/03/02 职场文书
企业财务人员岗位职责
2015/04/14 职场文书
公司宣传语大全
2015/07/13 职场文书
初中毕业生感言
2015/07/31 职场文书
体育委员竞选稿
2015/11/21 职场文书
关于对TypeScript泛型参数的默认值理解
2022/07/15 Javascript