a.html
<html>
<head>
<style type="text/css">
.popMenu{ behavior: url(aaa.htc);}
</style>
</head>
<body bgcolor= "#ffffff" class = "popMenu">
<form method="POST" action="" name="FMlog">
<table border="1" cellspacing="0" cellpadding="2" id="_HPB_TABLE_1_A_051012123250" class="hpb-cnt-tb1" width="1050">
<tr>
<table height = "1" border="0" width="950" align="center">
<tr>
<td align="center">
<br><p align = "center"><font size = 4><B>111</B></font></p><br>
</td>
</tr>
</table>
</tr> <tr>
<table height = "1" border="1" width="950" align="center">
<tr width = 950>
<td width = 950 align = "left" rowspan = "1" id="td1">
<font color = red>609F</font>11<font color =red>629D</font>331E050800000000050910000000050A00000000020B00040C000000030D02414C<font color =red>58A7</font>11<font color =red>58A7</font>11<font color =red>58A7629DE01F</font>11<font color =red>629D</font>11<font color =red>E21D</font>11<font color =red>C03F</font>11<font color =red>C03F</font>
11<font color =red>C03F</font>11<font color =red>629D</font>11<font color =red>E21D</font>11<font color="#FF0000">A05F</font>11<font color="#FF0000">A05F</font>11<font color="#FF0000">58A7</font>11<font color="#FF0000">58A7</font>11<font color="#FF0000">58A7629DE01F</font>11<font color="#FF0000">629D</font>11<font color="#FF0000">E21D</font>11<font color="#FF0000">C03F</font>11<font color="#FF0000">C03F</font>11<font color="#FF0000">C03F</font>11<font color="#FF0000">629D</font>11<font color="#FF0000">E21D</font>11<font color="#FF0000">A05F</font>11<font color="#FF0000">A05F</font>11<font color="#FF0000">58A7</font>
</td>
</tr>
</table>
</tr>
</table>
</form>
</body>
</html>
aaa.htc
<public:component>
<public:property name="description" value="Editable table" />
<public:property name="version" value="1.0.0.0" /> <public:attach event="oncontentready" onevent="init()" />
<public:attach event="oncontextmenu" onevent="showMenu()" /></public:component>
<script language="javascript">
var oPopup=null;
var popWidth=120;
var popHeight=40;
var curRow=null; function init(){
oPopup = window.createPopup();
var oPopBody = oPopup.document.body;
oPopBody.style.backgroundColor = "scrollbar";
oPopBody.style.border = "2px solid";
oPopBody.style.borderColor = "buttonhighlight buttonshadow buttonshadow buttonhighlight"
var strHTML=""
strHTML+='<table oncontextmenu="return false;" onselectstart="return false;" id="tbMenu" ';
strHTML+=' style="cursor:default; width:100%; height:100%;font-size:12px;" border=0 cellpadding=0 cellspacing=2>';
strHTML+='<tr operation="select"><td> すべて選択</td></tr>';
strHTML+='<tr operation="save"><td> 名前を付けて保存</td></tr>';
strHTML+='</table>'; oPopBody.innerHTML=strHTML;
var tb = oPopup.document.getElementById("tbMenu");
var rs=tb.rows;
for(var i=0;i<rs.length;i++){
var row=rs[i];
addEvent(row);
}
}function showMenu(){
var e=window.event;
var src=e.srcElement;
oPopup.show(window.event.clientX, window.event.clientY, popWidth, popHeight, document.body);
window.event.returnValue=false;
}function addEvent(row){
row.attachEvent("onmouseover",function(){selRow(row)});
row.attachEvent("onclick",function(){onEvent(row)});
}
function selRow(src){
if(curRow!=null){ curRow.style.backgroundColor="scrollbar"; curRow.style.color="black";}
curRow=src; curRow.style.backgroundColor="midnightblue"; curRow.style.color="white";
}function onEvent(src){
oPopup.hide();
switch(src.operation){
case "select": example(src.operation); break;
case "save": example(src.operation); break;
default: return;
}
src.style.backgroundColor="scrollbar";
src.style.color="black";
curRow=null;
}function check_one_branch(src){ copycode(parent.document.getElementById("td1"),src) return;}
function copycode(obj,src) { var rng = parent.document.body.createTextRange();
rng.moveToElementText(obj);
rng.scrollIntoView();
switch(src)
{
case "select": rng.select(); break;
case "save": rng.execCommand("Copy"); break;
}
rng.collapse(false);}
function example(str){
check_one_branch(str);
}
</script>
<html>
<head>
<style type="text/css">
.popMenu{ behavior: url(aaa.htc);}
</style>
</head>
<body bgcolor= "#ffffff" class = "popMenu">
<form method="POST" action="" name="FMlog">
<table border="1" cellspacing="0" cellpadding="2" id="_HPB_TABLE_1_A_051012123250" class="hpb-cnt-tb1" width="1050">
<tr>
<table height = "1" border="0" width="950" align="center">
<tr>
<td align="center">
<br><p align = "center"><font size = 4><B>111</B></font></p><br>
</td>
</tr>
</table>
</tr> <tr>
<table height = "1" border="1" width="950" align="center">
<tr width = 950>
<td width = 950 align = "left" rowspan = "1" id="td1">
<font color = red>609F</font>11<font color =red>629D</font>331E050800000000050910000000050A00000000020B00040C000000030D02414C<font color =red>58A7</font>11<font color =red>58A7</font>11<font color =red>58A7629DE01F</font>11<font color =red>629D</font>11<font color =red>E21D</font>11<font color =red>C03F</font>11<font color =red>C03F</font>
11<font color =red>C03F</font>11<font color =red>629D</font>11<font color =red>E21D</font>11<font color="#FF0000">A05F</font>11<font color="#FF0000">A05F</font>11<font color="#FF0000">58A7</font>11<font color="#FF0000">58A7</font>11<font color="#FF0000">58A7629DE01F</font>11<font color="#FF0000">629D</font>11<font color="#FF0000">E21D</font>11<font color="#FF0000">C03F</font>11<font color="#FF0000">C03F</font>11<font color="#FF0000">C03F</font>11<font color="#FF0000">629D</font>11<font color="#FF0000">E21D</font>11<font color="#FF0000">A05F</font>11<font color="#FF0000">A05F</font>11<font color="#FF0000">58A7</font>
</td>
</tr>
</table>
</tr>
</table>
</form>
</body>
</html>
aaa.htc
<public:component>
<public:property name="description" value="Editable table" />
<public:property name="version" value="1.0.0.0" /> <public:attach event="oncontentready" onevent="init()" />
<public:attach event="oncontextmenu" onevent="showMenu()" /></public:component>
<script language="javascript">
var oPopup=null;
var popWidth=120;
var popHeight=40;
var curRow=null; function init(){
oPopup = window.createPopup();
var oPopBody = oPopup.document.body;
oPopBody.style.backgroundColor = "scrollbar";
oPopBody.style.border = "2px solid";
oPopBody.style.borderColor = "buttonhighlight buttonshadow buttonshadow buttonhighlight"
var strHTML=""
strHTML+='<table oncontextmenu="return false;" onselectstart="return false;" id="tbMenu" ';
strHTML+=' style="cursor:default; width:100%; height:100%;font-size:12px;" border=0 cellpadding=0 cellspacing=2>';
strHTML+='<tr operation="select"><td> すべて選択</td></tr>';
strHTML+='<tr operation="save"><td> 名前を付けて保存</td></tr>';
strHTML+='</table>'; oPopBody.innerHTML=strHTML;
var tb = oPopup.document.getElementById("tbMenu");
var rs=tb.rows;
for(var i=0;i<rs.length;i++){
var row=rs[i];
addEvent(row);
}
}function showMenu(){
var e=window.event;
var src=e.srcElement;
oPopup.show(window.event.clientX, window.event.clientY, popWidth, popHeight, document.body);
window.event.returnValue=false;
}function addEvent(row){
row.attachEvent("onmouseover",function(){selRow(row)});
row.attachEvent("onclick",function(){onEvent(row)});
}
function selRow(src){
if(curRow!=null){ curRow.style.backgroundColor="scrollbar"; curRow.style.color="black";}
curRow=src; curRow.style.backgroundColor="midnightblue"; curRow.style.color="white";
}function onEvent(src){
oPopup.hide();
switch(src.operation){
case "select": example(src.operation); break;
case "save": example(src.operation); break;
default: return;
}
src.style.backgroundColor="scrollbar";
src.style.color="black";
curRow=null;
}function check_one_branch(src){ copycode(parent.document.getElementById("td1"),src) return;}
function copycode(obj,src) { var rng = parent.document.body.createTextRange();
rng.moveToElementText(obj);
rng.scrollIntoView();
switch(src)
{
case "select": rng.select(); break;
case "save": rng.execCommand("Copy"); break;
}
rng.collapse(false);}
function example(str){
check_one_branch(str);
}
</script>
你可以将选中内容复制到剪切板
你可以通过 TextRange 来得到选中的文本内容
我要复制的,不是全部。而是我选中了一个值,然后进行复制的。。
你的是全部复制了
aaa.htc
<public:component>
<public:property name="description" value="Editable table" />
<public:property name="version" value="1.0.0.0" /> <public:attach event="oncontentready" onevent="init()" />
<public:attach event="oncontextmenu" onevent="showMenu()" /></public:component>
<script language="javascript">
var oPopup=null;
var popWidth=120;
var popHeight=40;
var curRow=null; function init(){
oPopup = window.createPopup();
var oPopBody = oPopup.document.body;
oPopBody.style.backgroundColor = "scrollbar";
oPopBody.style.border = "2px solid";
oPopBody.style.borderColor = "buttonhighlight buttonshadow buttonshadow buttonhighlight"
var strHTML=""
strHTML+='<table oncontextmenu="return false;" onselectstart="return false;" id="tbMenu" ';
strHTML+=' style="cursor:default; width:100%; height:100%;font-size:12px;" border=0 cellpadding=0 cellspacing=2>';
strHTML+='<tr operation="select"><td> すべて選択</td></tr>';
strHTML+='<tr operation="save"><td> 名前を付けて保存</td></tr>';
strHTML+='</table>'; oPopBody.innerHTML=strHTML;
var tb = oPopup.document.getElementById("tbMenu");
var rs=tb.rows;
for(var i=0;i<rs.length;i++){
var row=rs[i];
addEvent(row);
}
}function showMenu(){
var e=window.event;
var src=e.srcElement;
oPopup.show(window.event.clientX, window.event.clientY, popWidth, popHeight, document.body);
window.event.returnValue=false;
}function addEvent(row){
row.attachEvent("onmouseover",function(){selRow(row)});
row.attachEvent("onclick",function(){onEvent(row)});
}
function selRow(src){
if(curRow!=null){ curRow.style.backgroundColor="scrollbar"; curRow.style.color="black";}
curRow=src; curRow.style.backgroundColor="midnightblue"; curRow.style.color="white";
}function onEvent(src){
oPopup.hide();
switch(src.operation){
case "select": example(src.operation); break;
case "save": example(src.operation); break;
default: return;
}
src.style.backgroundColor="scrollbar";
src.style.color="black";
curRow=null;
}function check_one_branch(src){ copycode(parent.document.getElementById("td1"),src) return;}
function copycode(obj,src) {
switch(src)
{
case "select":
var rng = parent.document.body.createTextRange();
rng.moveToElementText(obj);
rng.scrollIntoView();
rng.select();
rng.collapse(false);
break;
case "save": parent.document.execCommand("Copy"); break;
}
}
function example(str){
check_one_branch(str);
}
</script>
谢谢了
第一个select是全选
你也写对了
接着,要把选中的内容另存为到c:\\1.txt 里面去parent.document.execCommand("Copy");
parent.document.execCommand("Saveas",false,"c\\1.txt");结果这样是把画面上所有的内容存入1.txt了,而不是把所选中的内容存进去
window.clipboarddata.getdata("text")得到剪贴版的内容,其实这步可以省略,刚才那个地方直接打开新窗口,并且把新窗口的内容设为选中的。
存完了之后在把那个小窗口关掉,或是用iframe
没怎么做过javascript的
你能把代码写出来看一下么?
谢谢了
open一个新的为1象素的窗口,然后把新窗口的页面内容通过
window.clipboarddata.getdata("text")得到剪贴版的内容,其实这步可以省略,刚才那个地方直接打开新窗口,并且把新窗口的内容设为选中的。
存完了之后在把那个小窗口关掉,或是用iframe
很赞……
var win=window.open("about:blank","","")//开新窗口
win.document.write(window.clipboardData.getData("Text"))//保存到窗口里
win.execCommand("Saveas",false,"")//然后保存
差不多就是xxuu503(我爱郭芙蓉!) 那样的
具体代码
aaa.htc
<public:component>
<public:property name="description" value="Editable table" />
<public:property name="version" value="1.0.0.0" /> <public:attach event="oncontentready" onevent="init()" />
<public:attach event="oncontextmenu" onevent="showMenu()" /></public:component>
<script language="javascript">
var oPopup=null;
var popWidth=120;
var popHeight=40;
var curRow=null; function init(){
oPopup = window.createPopup();
var oPopBody = oPopup.document.body;
oPopBody.style.backgroundColor = "scrollbar";
oPopBody.style.border = "2px solid";
oPopBody.style.borderColor = "buttonhighlight buttonshadow buttonshadow buttonhighlight"
var strHTML=""
strHTML+='<table oncontextmenu="return false;" onselectstart="return false;" id="tbMenu" ';
strHTML+=' style="cursor:default; width:100%; height:100%;font-size:12px;" border=0 cellpadding=0 cellspacing=2>';
strHTML+='<tr operation="select"><td> すべて選択</td></tr>';
strHTML+='<tr operation="save"><td> 名前を付けて保存</td></tr>';
strHTML+='</table>'; oPopBody.innerHTML=strHTML;
var tb = oPopup.document.getElementById("tbMenu");
var rs=tb.rows;
for(var i=0;i<rs.length;i++){
var row=rs[i];
addEvent(row);
}
}function showMenu(){
var e=window.event;
var src=e.srcElement;
oPopup.show(window.event.clientX, window.event.clientY, popWidth, popHeight, document.body);
window.event.returnValue=false;
}function addEvent(row){
row.attachEvent("onmouseover",function(){selRow(row)});
row.attachEvent("onclick",function(){onEvent(row)});
}
function selRow(src){
if(curRow!=null){ curRow.style.backgroundColor="scrollbar"; curRow.style.color="black";}
curRow=src; curRow.style.backgroundColor="midnightblue"; curRow.style.color="white";
}function onEvent(src){
oPopup.hide();
switch(src.operation){
case "select": example(src.operation); break;
case "save": example(src.operation); break;
default: return;
}
src.style.backgroundColor="scrollbar";
src.style.color="black";
curRow=null;
}function check_one_branch(src){ copycode(parent.document.getElementById("td1"),src) return;}
function copycode(obj,src) {
switch(src)
{
case "select":
var rng = parent.document.body.createTextRange();
rng.moveToElementText(obj);
rng.scrollIntoView();
rng.select();
rng.collapse(false);
break;
case "save": parent.document.execCommand("Copy");
parent.window.open("2.htm","qwe","height=1,width=1,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=yes")
break;
}
}
function example(str){
check_one_branch(str);
}
</script>2.htm
<script language=javascript >
window.moveTo(-500,-500)
function show()
{
document.getElementById("span1").innerText=window.clipboardData.getData("text")
document.execCommand("Saveas",false,"c\\1.txt");
window.close();
}
</script>
<body style="display:none;overflow:hidden" onload="show()">
<span id="span1">
</span>