动态绑定浏览器插件弹出窗口内容 (soulteary.com)

【简介】

诉求起源:
在编写的插件的时候,我们经常会出现仅允许在某些情况下才可以弹出插件窗口的需求,如:用户打开了非插件页面、书签页面甚至是其他的插件页面。 chrome允许我们在manifest指定browseraction和pageaction,但是假如我们直接在manifest文件中指定了这两个json字段的内容,那么弹出窗的内容将会被『锁死』。

解决方案:
browseraction和pageaction都包含一个叫做setPopup的API,允许我们动态的设置插件的弹出窗内容,解决问题的关键点之一也就是这个API了。 而在何时执行setPopup,怎么执行setPopup是另外一个关键点,执行过早,插件交互一样会如同诉求起源的问题一样,『锁死』弹出内容。 下面分别以两种类型的插件为例,这两种类型的插件互斥,manifest仅允许存在其中之一(仅简单描述插件的形式区别,暂不展开描述)

点击查看原文 >>

@技术头条 2017-10-15 10:26 / 原作者微博:@soulteary / 0个评论
赞过的人: @技术头条
要不要再学学下面的文章?
如何使用纯CSS鉴别是不是Safari浏览器 (www.zhangxinxu.com)
如何通过纯 CSS 来判断是否为 Safari 浏览器?本文介绍了多种实用技巧和 @supports 规则的使用,帮助开发者轻松检测并处理 Safari 特有的样式兼容性问题。无论是桌面还是 iOS Safari,本文都有详细的解决方案!
by @技术头条 2024-09-09 23:40 查看详情
凭据获取之浏览器 (paper.seebug.org)
本文介绍提取三种常见浏览器Password和Cookie的原理以及关键代码实现,测试版本为最新版浏览器。
by @技术头条 2024-04-23 23:56 查看详情
大众点评内容搜索算法优化的探索与实践 (tech.meituan.com)
本文整理自美团技术沙龙第80期《美团内容智能分发的算法实践》,分享内容主要包括三部分。第一部分介绍了大众点评内容搜索的场景特点以及面临的挑战;第二部分介绍了为应对这些困难和挑战,技术团队在链路各环节上做的实践优化,包括内容消费和搜索满意度的优化等等;第三部分是总结和对未来的展望。
by @技术头条 2024-03-31 21:14 查看详情
RisingWave 窗口函数:滑动的艺术与对称的美学 (stdrc.cc)
窗口函数(Window Function)是数据库和流处理中一项非常常用的功能,该功能可用于对每一行输入数据计算其前后一定窗口范围内的数据的聚合结果,或是获取输入行的前/后指定偏移行中的数据。在其他一些流系统中,窗口函数功能也被称作“Over Aggregation”1。RisingWave 在此前的 1.1 版本中加入了窗口函数支持2。在 RisingWave 的窗口函数实现中,我们把实施窗口函数计算的算子称为 OverWindow 算子,本文将尝试解析 OverWindow 算子的设计与实现。
by @技术头条 2023-12-11 23:09 查看详情
听说你不想瞄准标题栏再移动窗口 (type.cyhsu.xyz)
移动窗口的方法是按住标题栏再拖动,这是小学电脑课就会教(甚至不用教)的基本操作。但是,并不是所有的窗口都这么喜欢让人抓住它的把柄。何况,这个操作本身的合理性也有讨论余地:我只是想挪一个窗口,为什么非要先瞄准。就比方说,我今天腰酸背疼两眼无神,可不可以申请不瞄准。
by @技术头条 2023-07-02 23:31 查看详情
DirectX Hook - 优雅的实现游戏辅助窗口 (paper.seebug.org)
最近看到了一个github的项目,分析过后觉得里面无论是代码还是界面都很好看,然后开始研究其代码。

这篇文章主要分析其如何实现的辅助窗口的实现,其用到的东西有minihook+DirectX11(9) Hook+imgui。
by @技术头条 2023-02-12 14:13 查看详情
Chrome浏览器原生支持的7种后台服务简介 (www.zhangxinxu.com)

妈呀,不知不觉中,浏览器竟然支持了这么多的Web后台服务特性,不少API我还是第一次见到。
by @技术头条 2023-02-12 14:01 查看详情
图解 Flink 滚动窗口、会话窗口和滑动窗口 (www.awaimai.com)
Flink 作业中的窗口是指一种对无限数据流设置有限数据集,从而实现了处理无线数据流的机制。

窗口本身只是个划分数据集的依据,它并不存储数据。

当我们需要在时间窗口维度上对数据进行聚合时,窗口是流处理应用中经常需要解决的问题。Flink的窗口算子为我们提供了方便易用的API,我们可以将数据流切分成一个个窗口,对窗口内的数据进行处理。

窗口主要有两种,一种基于时间的时间窗口(TimeWindow),一种基于数量的计数窗口(CountWindow),计数窗口与时间无关,本文主要讨论时间窗口。
by @技术头条 2022-08-19 00:16 查看详情
K8S Event事件内容分析和告警 (www.ipcpu.com)
k8s的Event事件是一种资源对象,用于展示集群内发生的情况,k8s系统中的各个组件会将运行时发生的各种事件上报给apiserver 。可以通过kubectl get event 或 kubectl describe pod podName 命令显示事件,查看k8s集群中发生了哪些事件。

apiserver 会将Event事件存在etcd集群中,为避免磁盘空间被填满,故强制执行保留策略:在最后一次的事件发生后,删除1小时之前发生的事件。
by @技术头条 2022-08-18 23:12 查看详情
必备的VScode插件 (mp.weixin.qq.com)
VS Code在没有这个扩展的情况下也会支持Python代码高亮显示。但还是推荐你安装Python这个扩展,Python是由微软自己开发的,与VS Code是同一个创建者。它对提高Python开发人员的效率非常有用,VS Code会自动建议你在打开第一个.py文件后立即安装它。
by @code小生 2022-08-07 09:40 查看详情