世界之窗论坛's Archiver

LaoShiDian 发表于 2008-3-5 11:41

如何获取所有打开页面的网址

这是从Maxthon拷出的代码,要修改哪些?

<script language="Javascript">
var sec_id=%max_security_id;
tab_c=external.tab_count;
cur_url="";
for(y=0; y < tab_c; y++){
cur_url +=external.get_tab(sec_id,y).document.URL.toString()+"\n";
}
window.clipboardData.setData("Text",cur_url);
</script>

LaoShiDian 发表于 2008-3-5 11:55

external.tab_count
标签数量

external.get_tab
标签窗口

应该是这两样不符合内置参数接口。

LaoShiDian 发表于 2008-3-7 10:07

看来我得弄成求助

LaoShiDian 发表于 2008-3-7 15:25

正所谓苍天大地。

LaoShiDian 发表于 2008-3-8 14:39

一日一顶

AY 发表于 2008-3-8 17:57

直接 pm 开发组问吧。

LaoShiDian 发表于 2008-3-8 21:40

是有这想法。

只恐人微言轻,加之列位看官(except LS)但观风云起,不沾半点尘。

我孤身只影独探凤巢,只恐啄个头青脸肿,鼠窜哀鸣不及。

以上都是玩笑话,闲着凑字。

LaoShiDian 发表于 2008-3-9 21:21

再顶个三五日看下。

sky5 发表于 2008-3-13 04:11

谢谢你给出截图工具

你的问题可以看这里

[url]http://wiki.ever360.com/index.php?title=Script%E6%8F%92%E4%BB%B6%E7%9A%84%E5%BC%80%E5%8F%91[/url]

看看有没有用

LaoShiDian 发表于 2008-3-15 23:58

非常谢谢sky5。
我浏览了您给的参考页面,截至现在而今眼前下,花费120大分。
的结论是,我有了可基本Debug的脚本,发现了我从原先的急功近利到最后的温火慢炖,还是没有浓缩后的精华。
小虾米累了,只好麻烦大虾们在风和日丽的时候能够偶尔也轻启枯唇黄牙的开示一二。
脚本如下:
<script language="Javascript">
var sec_id=%tw_security_id;

url_all="";
y=0;
while(
external.get_tab(sec_id,y)
)
{
alert(external.get_tab(sec_id,y))
y++;
alert(y);
url_all +=external.get_tab(sec_id,y).document.URL.toString()+"\n";
q=url_all;
alert(q);
if (external.get_tab(sec_id,y)==null) break;
{
}
}
alert(external.get_tab(sec_id,y))
y++;
alert("adsf");

window.clipboardData.setData("Text",q);

</script>

----------
external.get_tab(sec_id,y)
y=0,为第1个标签,
如开了4个标签,则y=4时,自动异常退出,脚本不成功。y=3则可用。

81635631 发表于 2008-3-16 04:12

再来帮顶 :ding:

sky5 发表于 2008-3-16 05:09

[quote]原帖由 [i]LaoShiDian[/i] 于 2008-3-15 23:58 发表 [url=http://bbs.ioage.com/cn/redirect.php?goto=findpost&pid=500335&ptid=52260][img]http://bbs.ioage.com/cn/images/common/back.gif[/img][/url]
非常谢谢sky5。
我浏览了您给的参考页面,截至现在而今眼前下,花费120大分。
的结论是,我有了可基本Debug的脚本,发现了我从原先的急功近利到最后的温火慢炖,还是没有浓缩后的精华。
小虾米累了,只好麻烦大虾们在风和日丽的时候能够偶尔也轻启枯唇黄牙的开示一二。
脚本如下:
<script language="Javascript">
var sec_id=%tw_security_id;

url_all="";
y=0;
while(
external.get_tab(sec_id,y)
)
{
alert(external.get_tab(sec_id,y))
y++;
alert(y);
url_all +=external.get_tab(sec_id,y).document.URL.toString()+"\n";
q=url_all;
alert(q);
if (external.get_tab(sec_id,y)==null) break;
{
}
}
alert(external.get_tab(sec_id,y))
y++;
alert("adsf");

window.clipboardData.setData("Text",q);

</script>

----------
external.get_tab(sec_id,y)
y=0,为第1个标签,
如开了4个标签,则y=4时,自动异常退出,脚本不成功。y=3则可用。[/quote]

你的问题:blood: ,呵呵,你开了四个tab,从0到3不就4个吗,y=4出错啦

你可以用catch捕获出错

LaoShiDian 发表于 2008-3-16 10:18

出了半成品,多谢sky5的开示及81635631的热心帮顶

本想找个Count,随便扯上两行了事,没想到赶鸭上架,在夜深人静的时候,还要听上一小段鸭嚎阵阵。

Catch在我这不生效,试了3个参数,有个直接就让TW自动退出了,附件可见。

Try立了大功,Finally在我这也是半拉不死。

之所以说半成品,是因为我如果拖曳重组了标签顺序,此脚本不能自动同步更新为新的标签组序,其仍然是按原来的标签组序逐次复制。

再次谢谢sky5大仙开示及81635631的热心帮顶。

下为代码及两套附件:

<script language="Javascript">
var sec_id=%tw_security_id;
url_all="";
y=0;
try
{
while(external.get_tab(sec_id,y))
{
//alert(external.get_tab(sec_id,y));
url_all +=external.get_tab(sec_id,y).document.URL.toString()+"\n";
window.clipboardData.setData("Text",url_all);
//alert(url_all);
y++;
}
}
catch(err)
//catch(external.get_tab(sec_id,y))。此为无反应
//catch(y)。此为TW自动退出。
{
//alert(external.get_tab(sec_id,y))
}
finally
{
  window.clipboardData.setData("Text",url_all);
}
</script>

sky5 发表于 2008-3-16 15:42

呵呵,有时间再看啦

不过,好奇一下楼主,弄这个干虾米呢?呵呵

LaoShiDian 发表于 2008-3-16 21:58

快捷组的菜单和插件无声无息,这是准备做别名管理器的插件。

[[i] 本帖最后由 LaoShiDian 于 2008-3-16 22:26 编辑 [/i]]

sky5 发表于 2008-4-6 00:56

找到个KKF很久之前弄的,你可以参考对比一下:shy:

[code] <script language="javascript">
window.onerror= function(e,u,l){alert(e+ "    >  " + l);return true}
//var alltabs=external.tab_count
var security_id=%max_security_id;
var tabCount=0,titleList = new Array();
for (var i=0; i<300; i++)
{ flag='';
try { if(typeof(external.get_tab(security_id,i)) =='object')
  { tabCount++ ;
   titleList[titleList.length] =external.get_tab(security_id,i).document.title
  }
     }
catch(e){break;}
}
if(confirm("当前标签数量为: "+tabCount+"\n\n要显示每个tab的标题么?\n提示:(如果标签很多,会非常卡!!)"))
{ var outStr='TheWorld世界之窗 当前 TAB 列表: \n\n';
for(var i=0;i<titleList.length;i++)outStr=outStr+(i+1)+". "+titleList[i]+"\n";
outStr+="\n\t\t\t\t\t\t\t\tbY kkf @2006.12.10"
alert(outStr)
}
</script>

[/code]

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.