修改发贴的编辑功能


Posted in Javascript onMarch 07, 2007

以下代码可以做到在光标处插入代码,如果有选择区域,则会使用选择区域生效。 

1、vbcode.js 文件中 
替换函数 vbcode 为下面内容 

function vbcode(theform,vbcode,prompttext) {   
 if (theform.message.createTextRange && theform.message.caretPos) {   
var caretPos = theform.message.caretPos;   

if(caretPos.text.length > 0)   

 caretPos.text = "["+vbcode+"]" + caretPos.text + "[/"+vbcode+"]";   

else   

 caretPos.text = "["+vbcode+"]" + "[/"+vbcode+"]";   
 }   
 theform.message.focus();   
}  

替换函数 fontformat 为下面内容 
function fontformat(theform,thevalue,thetype) {   
 if (theform.message.createTextRange && theform.message.caretPos) {   
var caretPos = theform.message.caretPos;   

if(caretPos.text.length > 0)   

 caretPos.text = "["+thetype+"="+thevalue+"]" + caretPos.text + "[/"+thetype+"]";   

else   

 caretPos.text = "["+thetype+"="+thevalue+"]" + "[/"+thetype+"]";   
 }   
 theform.sizeselect.selectedIndex = 0;   
 theform.fontselect.selectedIndex = 0;   
 theform.colorselect.selectedIndex = 0;   
 theform.message.focus();   
}  

替换函数 smilie 为下面内容 
function smilie(thesmilie) {   
// inserts smilie text   
 if (document.vbform.message.createTextRange && document.vbform.message.caretPos) {   
var caretPos = document.vbform.message.caretPos;   

caretPos.text = thesmilie;   
 }   
 document.vbform.message.focus();   
}  

加入下面代码 
function storeCaret(textEl) {   
 if (textEl.createTextRange)   
textEl.caretPos = document.selection.createRange().duplicate();   
}  

2、color.js 文件 
查找函数 insertTag 替换成下面内容 
function insertTag(MyString)   
{   
 bbopen=''   
 bbclose='';    if (MM_findObj('message').createTextRange && MM_findObj('message').caretPos) {   

var text = bbopen + bbclose ;   

var caretPos = MM_findObj('message').caretPos;   

if(caretPos.text.length > 0)   

 caretPos.text = bbopen + caretPos.text + bbclose;   

else   

 caretPos.text = text;   
 } else {   

MM_findObj('message').value += bbopen + bbclose;   
 }   
 MM_findObj('message').focus();   
 return;   
}  

3、修改 editpost、newthread 和 newreply 模板 
查找 
$postinfo[message] 
替换成 
$postinfo[message] 
Javascript 相关文章推荐
greybox——不开新窗口看新的网页
Feb 20 Javascript
基于jQuery的弹出消息插件 DivAlert之旅(一)
Apr 01 Javascript
jquery中的过滤操作详细解析
Dec 02 Javascript
js调试系列 源码定位与调试[基础篇]
Jun 18 Javascript
js使用i18n实现页面国际化的方法
May 09 Javascript
vue父组件通过props如何向子组件传递方法详解
Aug 16 Javascript
Vue不能观察到数组length的变化
Jun 08 Javascript
vue组件中的样式属性scoped实例详解
Oct 30 Javascript
vue双向绑定及观察者模式详解
Mar 19 Javascript
详解在HTTPS 项目中使用百度地图 API
Apr 26 Javascript
学习RxJS之JavaScript框架Cycle.js
Jun 17 Javascript
微信小程序保存图片到相册权限设置
Apr 09 Javascript
Javascript之文件操作
Mar 07 #Javascript
得到文本框选中的文字,动态插入文字的js代码
Mar 07 #Javascript
在textarea文本域中显示HTML代码的方法
Mar 06 #Javascript
一个高效的JavaScript压缩工具下载集合
Mar 06 #Javascript
禁止F5等快捷键的JS代码
Mar 06 #Javascript
服务端 VBScript 与 JScript 几个相同特性的写法 By shawl.qiu
Mar 06 #Javascript
javascript 简单高效判断数据类型 系列函数 By shawl.qiu
Mar 06 #Javascript
You might like
Zerg建筑一览
2020/03/14 星际争霸
destoon实现公司新闻详细页添加评论功能的方法
2014/07/15 PHP
Yii学习总结之安装配置
2015/02/22 PHP
php中instanceof 与 is_a()区别分析
2015/03/03 PHP
使用JS操作页面表格,元素的一些技巧
2007/02/02 Javascript
一个刚完成的layout(拖动流畅,不受iframe影响)
2007/08/17 Javascript
JS应用之禁止抓屏、复制、打印
2008/02/21 Javascript
javascript 清除输入框中的数据
2009/04/13 Javascript
JavaScript实现维吉尼亚(Vigenere)密码算法实例
2013/11/22 Javascript
Get中文乱码IE浏览器Get中文乱码解决方案
2013/12/26 Javascript
JavaScript 面向对象与原型
2015/04/10 Javascript
jQuery prototype冲突的2种解决方法(附demo示例下载)
2016/01/21 Javascript
论JavaScript模块化编程
2016/03/07 Javascript
html+js实现简单的计算器代码(加减乘除)
2016/07/12 Javascript
Angular工具方法学习
2016/12/26 Javascript
vue.js 底部导航栏 一级路由显示 子路由不显示的解决方法
2018/03/09 Javascript
el-select数据过多懒加载的解决(loadmore)
2019/05/29 Javascript
vue实现一拉到底的滑动验证
2019/07/25 Javascript
JS正则表达式常见函数与用法小结
2020/04/13 Javascript
使用Vue+Django+Ant Design做一个留言评论模块的示例代码
2020/06/01 Javascript
[43:43]完美世界DOTA2联赛PWL S2 FTD.C vs Rebirth 第一场 11.22
2020/11/24 DOTA
python安装PIL模块时Unable to find vcvarsall.bat错误的解决方法
2016/09/19 Python
Python3中简单的文件操作及两个简单小实例分享
2017/06/18 Python
Python数据可视化正态分布简单分析及实现代码
2017/12/04 Python
Django中reverse反转并且传递参数的方法
2019/08/06 Python
Pyqt5自适应布局实例
2019/12/13 Python
python实现AdaBoost算法的示例
2020/10/03 Python
CSS3弹性盒模型flex box快速入门心得(必看篇)
2016/05/24 HTML / CSS
HTML5中的Scoped属性使用实例
2014/04/23 HTML / CSS
ABOUT YOU匈牙利:500个最受欢迎的时尚品牌
2019/07/19 全球购物
成考报名单位证明范本
2014/01/16 职场文书
幼儿园家长寄语
2014/04/02 职场文书
社区服务标语
2014/07/01 职场文书
大学生安全责任书
2014/07/25 职场文书
2015军训通讯稿大全
2015/07/18 职场文书
MYSQL事务的隔离级别与MVCC
2022/05/25 MySQL