<TEXTAREA NAME="ice" id='ice' ROWS="5" COLS="50" onkeydown='testTab()'></TEXTAREA>
<SCRIPT LANGUAGE="JavaScript">
<!--
function testTab()
{
if (event.shiftKey && event.keyCode == 9)
{
ice.value = ice.value.replace(/^(.*)\t$/g,"$1");
event.returnValue = false;
return;
}
if (event.keyCode == 9)
{
ice.value += '\t';
event.returnValue = false;
}
}
//-->
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript">
<!--
function testTab()
{
if (event.shiftKey && event.keyCode == 9)
{
ice.value = ice.value.replace(/^(.*)\t$/g,"$1");
event.returnValue = false;
return;
}
if (event.keyCode == 9)
{
ice.value += '\t';
event.returnValue = false;
}
}
//-->
</SCRIPT>
<TEXTAREA NAME="ice" id='ice' ROWS="5" COLS="50" onkeydown='testTab()'></TEXTAREA>
<SCRIPT LANGUAGE="JavaScript">
<!--
function testTab()
{
if (event.shiftKey && event.keyCode == 9)
{
ice.value = ice.value.replace(/^(.*)\u0020{4}$/,"$1");
event.returnValue = false;
return;
}
if (event.keyCode == 9)
{
ice.value += "\u0020\u0020\u0020\u0020";
event.returnValue = false;
}
}
//-->
</SCRIPT>
一般编辑器按tab键可是后退文字的,比如editplus,interdev,dw等等。
<TEXTAREA NAME="ice" id='ice' ROWS="5" COLS="50" onkeydown='testTab()'></TEXTAREA>
<SCRIPT LANGUAGE="JavaScript">
<!--
function testTab()
{
var sel = document.selection.createRange();
if (event.shiftKey && event.keyCode == 9)
{
sel.move("character",-4);
sel.select();
event.returnValue = false;
return;
}
if (event.keyCode == 9)
{
sel.text = "\u0020\u0020\u0020\u0020";
//sel.move("character",4);
sel.select();
event.returnValue = false;
}
}
//-->
</SCRIPT>
这个功能很酷!
3Q!
<SCRIPT LANGUAGE="JavaScript">
<!--
function testTab()
{
var sel = document.selection.createRange();
var mytext= sel.text;
var i,j,k;
if (event.shiftKey && event.keyCode == 9)
{
arr=mytext.split(String.fromCharCode(13,10))
mytext=""
for(k=0;k<arr.length;k++)
{
for (j=1; j<=4;j++)
{
if(arr[k].substr(0,1)=="\u0020")
{
arr[k]=arr[k].slice(1)
}
}
mytext += arr[k] + ((k==(arr.length-1))? "" : String.fromCharCode(13,10));
}
sel.text = mytext;
sel.select();
event.returnValue = false;
return;
}
if (event.keyCode == 9)
{
arr=mytext.split(String.fromCharCode(13,10))
mytext=""
for(j=0;j<arr.length;j++)
{
mytext += "\u0020\u0020\u0020\u0020" + arr[j] + ((j==(arr.length-1))? "" : String.fromCharCode(13,10));
}
sel.text = mytext;
sel.select();
event.returnValue = false;
}
}
//-->
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript">
<!--
function testTab()
{
var sel = document.selection.createRange();
var mytext= sel.text;
var i,j,k;
if (event.shiftKey && event.keyCode == 9)
{
arr=mytext.split(String.fromCharCode(13,10))
mytext=""
for(k=0;k<arr.length;k++)
{
for (j=1; j<=4;j++)
{
if(arr[k].substr(0,1)=="\u0020")
{
arr[k]=arr[k].slice(1)
}
}
mytext += arr[k] + ((k==(arr.length-1))? "" : String.fromCharCode(13,10));
}
with(sel){
sel.text = mytext;
collapse(true)
moveEnd("character",0)
moveStart("character",(mytext.length -2) * -1)
select()
}
window.event.cancelBubble = true;
event.returnValue = false;
return;
}
if (event.keyCode == 9)
{
arr=mytext.split(String.fromCharCode(13,10))
mytext=""
for(j=0;j<arr.length;j++)
{
mytext += "\u0020\u0020\u0020\u0020" + arr[j] + ((j==(arr.length-1))? "" : String.fromCharCode(13,10));
}
with(sel){
sel.text = mytext;
collapse(true)
moveEnd("character",0)
moveStart("character",(mytext.length -2) * -1)
select()
}
window.event.cancelBubble = true;
event.returnValue = false;
return;
}
}
//-->
</SCRIPT>
<TEXTAREA NAME="ice" id='ice' ROWS="50" COLS="100" onkeydown='testTab()'></TEXTAREA>
<SCRIPT LANGUAGE="JavaScript">
<!--
function testTab()
{
var sel = document.selection.createRange();
var mytext= sel.text;
var i,j,k;
if (event.shiftKey && event.keyCode == 9)
{
arr=mytext.split(String.fromCharCode(13,10))
mytext=""
for(k=0;k<arr.length;k++)
{
for (j=1; j<=4;j++)
{
if(arr[k].substr(0,1)=="\u0020")
{
arr[k]=arr[k].slice(1)
}
}
mytext += arr[k] + ((k==(arr.length-1))? "" : String.fromCharCode(13,10));
}
with(sel){
sel.text = mytext;
collapse(true)
moveEnd("character",0)
moveStart("character",(mytext.length ) * -1)
select()
}
window.event.cancelBubble = true;
event.returnValue = false;
return;
}
if (event.keyCode == 9)
{
arr=mytext.split(String.fromCharCode(13,10))
mytext=""
for(j=0;j<arr.length;j++)
{
mytext += "\u0020\u0020\u0020\u0020" + arr[j] + ((j==(arr.length-1))? "" : String.fromCharCode(13,10));
}
with(sel){
sel.text = mytext;
collapse(true)
moveEnd("character",0)
moveStart("character",(mytext.length ) * -1)
select()
}
window.event.cancelBubble = true;
event.returnValue = false;
return;
}
}
//-->
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript">
<!--
function testTab()
{
var sel = document.selection.createRange();
var mytext= sel.text;
var i,j,k;
if (event.shiftKey && event.keyCode == 9)
{
arr=mytext.split(String.fromCharCode(13,10))
mytext=""
for(k=0;k<arr.length;k++)
{
for (j=1; j<=4;j++)
{
if(arr[k].substr(0,1)=="\u0020")
{
arr[k]=arr[k].slice(1)
}
}
mytext += arr[k] + ((k==(arr.length-1))? "" : String.fromCharCode(13,10));
}
with(sel){
sel.text = mytext;
collapse(true)
moveEnd("character",0)
moveStart("character",(mytext.length ) * -1)
select()
}
window.event.cancelBubble = true;
event.returnValue = false;
return;
}
if (event.keyCode == 9)
{
arr=mytext.split(String.fromCharCode(13,10))
mytext=""
for(j=0;j<arr.length;j++)
{
mytext += "\u0020\u0020\u0020\u0020" + arr[j] + ((j==(arr.length-1))? "" : String.fromCharCode(13,10));
}
with(sel){
sel.text = mytext;
collapse(true)
moveEnd("character",0)
moveStart("character",(mytext.length -4) * -1)
select()
}
window.event.cancelBubble = true;
event.returnValue = false;
return;
}
}
//-->
</SCRIPT>