修改发贴的编辑功能

 更新时间:2007年03月07日 00:00:00   作者:  
以下代码可以做到在光标处插入代码,如果有选择区域,则会使用选择区域生效。 

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 split()方法定义及更多实例

    JavaScript split()方法定义及更多实例

    这篇文章主要给大家介绍了关于JavaScript split()方法定义及更多实例的相关资料,js里的split()方法大家都知道用于将字符串转化为字符串数组,文中通过代码实例介绍的非常详细,需要的朋友可以参考下
    2024-03-03
  • javaScript实现支付10秒倒计时

    javaScript实现支付10秒倒计时

    这篇文章主要为大家详细介绍了javaScript实现支付10秒倒计时,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-10-10
  • javascript 兼容鼠标滚轮事件

    javascript 兼容鼠标滚轮事件

    浏览地图时,使用鼠标滚轮来放大和缩小。即用到了滚轮事件。
    2009-04-04
  • js实现右下角窗口弹出窗口效果

    js实现右下角窗口弹出窗口效果

    好的朋友经常需要弹出信息,这个功能不错
    2008-09-09
  • javascript实现iframe框架延时加载的方法

    javascript实现iframe框架延时加载的方法

    这篇文章主要介绍了javascript实现iframe框架延时加载的方法,可基于setTimeout实现这一功能,是非常实用的技巧,需要的朋友可以参考下
    2014-10-10
  • asp错误 '80040e21' 多步 OLE DB 操作产生错误

    asp错误 '80040e21' 多步 OLE DB&nbs

    今天在写asp入库操作的时候提示Microsoft OLE DB Provider for ODBC Drivers 错误 80040e21 多步 OLE DB 操作产生错误,请检查每个 OLE DB 状态值,经测试时函数定义文件没有加载导致类型不对,所以无法入库
    2023-05-05
  • JS实现导航栏楼层特效

    JS实现导航栏楼层特效

    这篇文章主要为大家详细介绍了JS实现导航栏楼层特效,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-01-01
  • 利用ECharts.js画K线图的方法示例

    利用ECharts.js画K线图的方法示例

    这篇文章主要给大家介绍了关于利用ECharts.js画K线图的相关资料,,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-01-01
  • javascript不同页面传值的改进版

    javascript不同页面传值的改进版

    改进点:支持同页面有多个文本框,可自动向不同的文本框传值。先看演示吧
    2008-09-09
  • javascript-hashchange事件和历史状态管理实例分析

    javascript-hashchange事件和历史状态管理实例分析

    这篇文章主要介绍了javascript-hashchange事件和历史状态管理,结合实例形式分析了javascript-hashchange基本功能、原理及历史状态管理相关操作技巧,需要的朋友可以参考下
    2020-04-04

最新评论