利用JavaScript保存网页某部分内容到本地
标签:
JavaScript
自从有了上次利用代码解决实际问题后,便无法自拔的想用代码去解决生活中遇到的问题。
平时喜欢在网上找些简单开源项目看看,学习。此为背景。
今天无意中发现这个
每次打开网页都很麻烦,于是我就想着把这个表格保存到本地(原HTML),留着以后慢慢看。
于是
var tab=document.getElementById("table_default");
//获取行数
var rows=tab.rows;
//遍历行
for(var i=0;i<rows.length;i++)
{
//遍历表格列
for(var j=0;j<rows[i].cells.length;j++)
{
console.log(rows[i].cells[j].innerHTML);
//打印某行某列的值
/*alert("第"+(i+1)+"行,第"+(j+1)+"列的值是:"+rows[i].cells[j].innerHTML);*/
}
}
alert("共有"+(i+1)*4+"个C#开源项目");
OK,代码写完了,该保存了,然后谷歌了一波Javascript文件操作。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
<script language="JavaScript">
var fso = new ActiveXObject("Scripting.FileSystemObject");
var file=fso.CreateTextFile("c:\\test\\test.txt", true);
</script>
</head>
<body>
</body>
</html>
Excuse Me?
Chrome是基于Webkit的, ActiveXObject对象只能在IE下操作。
好好好,IE就IE。
Nice,成功!现在就写入内容吧。
var fso = new ActiveXObject("Scripting.FileSystemObject");
var file=fso.CreateTextFile("c:\\test\\test.txt", true);
var tableInfo="";
var tab = document.getElementById("table_default") ;
for(var i=0;i<tab.rows.length;i++)
{
for(var j=0;j<tab.rows[i].cells.length;j++)
{
tableInfo += tab.rows[i].cells[j].innerText; //获取Table中单元格的内容
tableInfo += " ";
}
}
file.write(tableInfo);
file.Close();
最终效果如下:
总结:这个IE还是不大安全的,这个所谓的 ActiveX插件居然可以和本地文件进行交互。另外,以后还是拿C#或者Java其他类型的语言实现这种功能,Javascript进行文件交互实在太麻烦了。
我花在想代码的时间比复制粘贴多很多时间。
在知乎上也看到了这个问题。你有哪些用计算机技能解决生活问题的经历?。
点击查看更多内容
1人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦