简略的前端架构心得&&基于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 相关文章推荐
SharePoint 客户端对象模型 (一) ECMA Script
May 22 Javascript
javascript笔记 String类replace函数的一些事
Sep 22 Javascript
Jquery写一个鼠标拖动效果实现原理与代码
Dec 24 Javascript
js跑马灯代码(自写)
Apr 17 Javascript
了解Javascript的模块化开发
Mar 02 Javascript
详解JavaScript操作HTML DOM的基本方式
Oct 21 Javascript
原生js实现验证码功能
Mar 16 Javascript
jQuery中过滤器的基本用法示例
Oct 11 jQuery
微信小程序 冒泡事件原理解析
Sep 27 Javascript
vue 获取及修改store.js里的公共变量实例
Nov 06 Javascript
JavaScript队列结构Queue实现过程解析
Mar 07 Javascript
jQuery实现影院选座订座效果
Apr 13 jQuery
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
php pcntl_fork和pcntl_fork 的用法
2009/04/13 PHP
php allow_url_include的应用和解释
2010/04/22 PHP
thinkphp路由规则使用示例详解和伪静态功能实现(apache重写)
2014/02/24 PHP
如何让thinkphp在模型中自动完成session赋值小教程
2014/09/05 PHP
laravel5使用freetds连接sql server的方法
2018/12/07 PHP
js模拟C#中List的简单实例
2014/03/06 Javascript
jQuery Masonry瀑布流插件使用详解
2014/11/17 Javascript
JavaScript分页功能的实现方法
2015/04/25 Javascript
jQuery EasyUI实现右键菜单变灰不可用效果
2015/09/24 Javascript
需要牢记的JavaScript基础知识
2016/09/25 Javascript
Js动态设置rem来实现移动端字体的自适应代码
2016/10/14 Javascript
JS中showModalDialog关闭子窗口刷新主窗口用法详解
2017/03/25 Javascript
React-router v4 路由配置方法小结
2017/08/08 Javascript
Vue-Router实现组件间跳转的三种方法
2017/11/07 Javascript
webpack优化的深入理解
2018/12/10 Javascript
关于angular浏览器兼容性问题的解决方案
2020/07/26 Javascript
js+canvas实现画板功能
2020/09/13 Javascript
[55:35]VGJ.S vs Mski Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
Python实现的简单模板引擎功能示例
2017/09/02 Python
Python调用C语言的方法【基于ctypes模块】
2018/01/22 Python
python 定时器每天就执行一次的实现代码
2019/08/14 Python
在Pytorch中使用样本权重(sample_weight)的正确方法
2019/08/17 Python
python切片作为占位符使用实例讲解
2021/02/17 Python
thinkphp5 路由分发原理
2021/03/18 PHP
白俄罗斯在线大型超市:e-dostavka.by
2019/07/25 全球购物
error和exception有什么区别
2012/10/02 面试题
方法名是否可以与构造器的名字相同
2012/06/04 面试题
办公室文秘自我鉴定
2013/09/21 职场文书
汽车维修工岗位职责
2014/02/12 职场文书
《白鹅》教学反思
2014/04/13 职场文书
幼儿园区域活动总结
2014/05/08 职场文书
银行培训心得体会范文
2016/01/09 职场文书
2016年感恩教师节活动总结
2016/04/01 职场文书
GoLang中生成UUID唯一标识的实现
2021/05/08 Golang
Python 内置函数速查表一览
2021/06/02 Python
详解Oracle块修改跟踪功能
2021/11/07 Oracle