找回密码
 加入傲游社区
跳转到指定楼层

[插件求助] 【插件开发】被注入的脚本中,怎样得到所在的Tab?

[复制链接]
我梦江南好 [初入江湖] 发表于 2018-2-27 18:54:50 | 显示全部楼层 |阅读模式  560 3
如果向某个Tab中注入了一个脚本:
var browser = rt.create("mx.browser");
browser.injectScriptFile('js/dawn.js');

那么在这个js/dawn.js里面,怎样判断它自己是运行在哪一个Tab里面的呢?
评论
精彩评论 ( 3条 ) 跳转到指定楼层
本帖由 极品ΦωΦ小 [超级版主] 发表于 2018-2-28 09:23:19 | 显示全部楼层
  1. Tab=browser.tabs;

  2.     tid=Tab.getCurrentTab().id;                                 //获取浏览器当前标签ID
  3.     url=Tab.getCurrentTab().url;                                //获取浏览器当前标签Url
  4.     webTitle=Tab.getCurrentTab().title;                            //获取浏览器当前标签网页标题
  5.     urls=url.replace(/(^https?:\/\/[^\/]*?)\/.+$/i,'$1');      //获取浏览器当前标签Url——提取协议头&主域名
  6.     host=urls.replace(/^https?:\/\//i,'');                      //获取浏览器当前标签Url——提取主域名
复制代码

获取 tab 信息,还有其它的自己看置顶帖中的文档了
我梦江南好 [初入江湖] 发表于 2018-3-1 11:11:26 | 显示全部楼层
极品ΦωΦ小 发表于 2018-2-28 09:23
获取 tab 信息,还有其它的自己看置顶帖中的文档了

你好。
browser.tabs.getCurrentTab()接口获取的是当前激活的Tab页。而我想获得是“脚本运行环境所在的Tab页”。
这两者是不一样的。

比如:在某个Tab页中注入了一段脚本,该脚本在监听(listen)某个事件。当该Tab也被切换到后台时,getCurrentTab()得到的就不是该Tab页了。此时怎样向其发送(post)事件?
本帖由 极品ΦωΦ小 [超级版主] 发表于 2018-3-1 11:29:12 | 显示全部楼层
由被注入的脚本发起 Post,插件Listen,然后再进行Post
http://extension.maxthon.cn/deta ... 70&category_id=
可以参考我的插件,侦听选取内容操作,有注释
您需要登录后才可以回帖 登录 | 加入傲游社区
快速回复 返回顶部 返回列表