|
|
/** * Created with JetBrains PhpStorm. * User: xuheng * Date: 12-9-26 * Time: 下午12:29 * To change this template use File | Settings | File Templates. */
//清空上次查选的痕迹
editor.firstForSR = 0;editor.currentRangeForSR = null;//给tab注册切换事件
/** * tab点击处理事件 * @param tabHeads * @param tabBodys * @param obj */function clickHandler( tabHeads,tabBodys,obj ) { //head样式更改
for ( var k = 0, len = tabHeads.length; k < len; k++ ) { tabHeads[k].className = ""; } obj.className = "focus"; //body显隐
var tabSrc = obj.getAttribute( "tabSrc" ); for ( var j = 0, length = tabBodys.length; j < length; j++ ) { var body = tabBodys[j], id = body.getAttribute( "id" ); if ( id != tabSrc ) { body.style.zIndex = 1; } else { body.style.zIndex = 200; } }
}
/** * TAB切换 * @param tabParentId tab的父节点ID或者对象本身 */function switchTab( tabParentId ) { var tabElements = $G( tabParentId ).children, tabHeads = tabElements[0].children, tabBodys = tabElements[1].children;
for ( var i = 0, length = tabHeads.length; i < length; i++ ) { var head = tabHeads[i]; if ( head.className === "focus" )clickHandler(tabHeads,tabBodys, head ); head.onclick = function () { clickHandler(tabHeads,tabBodys,this); } }}$G('searchtab').onmousedown = function(){ $G('search-msg').innerHTML = ''; $G('replace-msg').innerHTML = ''}//是否区分大小写
function getMatchCase(id) { return $G(id).checked ? true : false;}//查找
$G("nextFindBtn").onclick = function (txt, dir, mcase) { var findtxt = $G("findtxt").value, obj; if (!findtxt) { return false; } obj = { searchStr:findtxt, dir:1, casesensitive:getMatchCase("matchCase") }; if (!frCommond(obj)) { var bk = editor.selection.getRange().createBookmark(); $G('search-msg').innerHTML = lang.getEnd; editor.selection.getRange().moveToBookmark(bk).select();
}};$G("nextReplaceBtn").onclick = function (txt, dir, mcase) { var findtxt = $G("findtxt1").value, obj; if (!findtxt) { return false; } obj = { searchStr:findtxt, dir:1, casesensitive:getMatchCase("matchCase1") }; frCommond(obj);};$G("preFindBtn").onclick = function (txt, dir, mcase) { var findtxt = $G("findtxt").value, obj; if (!findtxt) { return false; } obj = { searchStr:findtxt, dir:-1, casesensitive:getMatchCase("matchCase") }; if (!frCommond(obj)) { $G('search-msg').innerHTML = lang.getStart; }};$G("preReplaceBtn").onclick = function (txt, dir, mcase) { var findtxt = $G("findtxt1").value, obj; if (!findtxt) { return false; } obj = { searchStr:findtxt, dir:-1, casesensitive:getMatchCase("matchCase1") }; frCommond(obj);};//替换
$G("repalceBtn").onclick = function () { var findtxt = $G("findtxt1").value.replace(/^\s|\s$/g, ""), obj, replacetxt = $G("replacetxt").value.replace(/^\s|\s$/g, ""); if (!findtxt) { return false; } if (findtxt == replacetxt || (!getMatchCase("matchCase1") && findtxt.toLowerCase() == replacetxt.toLowerCase())) { return false; } obj = { searchStr:findtxt, dir:1, casesensitive:getMatchCase("matchCase1"), replaceStr:replacetxt }; frCommond(obj);};//全部替换
$G("repalceAllBtn").onclick = function () { var findtxt = $G("findtxt1").value.replace(/^\s|\s$/g, ""), obj, replacetxt = $G("replacetxt").value.replace(/^\s|\s$/g, ""); if (!findtxt) { return false; } if (findtxt == replacetxt || (!getMatchCase("matchCase1") && findtxt.toLowerCase() == replacetxt.toLowerCase())) { return false; } obj = { searchStr:findtxt, casesensitive:getMatchCase("matchCase1"), replaceStr:replacetxt, all:true }; var num = frCommond(obj); if (num) { $G('replace-msg').innerHTML = lang.countMsg.replace("{#count}", num); }};//执行
var frCommond = function (obj) { return editor.execCommand("searchreplace", obj);};switchTab("searchtab");
|