开源分享一个Chrome插件 倒计时功能

PTA刷题必备:5分钟搞定Chrome计时器插件安装与配置(附常见问题解决) 本文详细介绍了如何为PTA(拼题A)刷题安装和配置一款高效的Chrome浏览器计时器插件。通过手动加载开发者模式扩展,实现与题目页面的无缝集成,支持自动计时、倒计时等功能,帮助编程学习者和备考者量化解题时间,模拟真实考试环境,从而显著提升刷题专注度与训练效率。 阅读详情

前言

背景是这样,最近被优化了,这家公司干了六七年了,突如其来的遭遇,让我不知所措。面试邀约迟迟未到。想想先自己写点东西可以有东西可以说。这不离开倒计时还有一个月,灵光一闪,写个倒计时Chrome插件吧,送给自己作为礼物。哈哈哈~

我的chrome插件队列里有一个叫“utctime”的插件,样式简约看了代码 tailwind ,于是我拿来参考了下

image.png

思路

对了,忘记介绍下我用的Chrome开发套件了,我用的Plasmo ,我也是看到 独立开发者出海技术栈和工具 里分享的,正好可以练练手。

之前已经对Plasmo 官网的各个api功能点,都跑通了,所以这次上手比较快。想要了解更多的可以看这个项目https://github.com/PlasmoHQ/examples

刚把popup页面画完,想了想,倒计时的插件能做哪些功能作为付费功能呢?于是我问了ChatGPT:

image.png
感觉还挺靠谱,于是更加有了信心。等等,chrome插件市场不会有了吧?于是我有来到chrome插件市场有没有类似的插件,果然你能想到的别人都给你做了。

image.png

image.png
还是有多种主题的刚好ChatGPT里也提到了哈哈哈

image.png

管他的,我也借鉴了它的功能。

image.png
看着还行,然后还有一个倒计时结束的提醒页面。

image.png

image.png

虽然挺丑,但是功能都有。我感觉再优化下样式,增加点主题,就可以上架了。

这里分享给大家,希望对大家有帮助。
https://github.com/paulloo/chromePlugin_countDown

Open UI5 源代码解析之790:ListItemBase.js 摘要 ListItemBase.js是SAP OpenUI5框架中sap.m库的核心基类文件,为各类列表项控件提供统一的基础功能。该文件实现了以下关键能力: 标准化交互模式:统一处理选择态、按压反馈、键盘导航等交互行为,确保不同列表项体验一致 可访问性体系:内置完整的无障碍支持,自动生成朗读文本并整合多种状态信息 动态控件管理:按需创建内部子控件(如操作按钮、选择框),优化大型列表性能 父子通信协议:定义列表项与父容器的标准交互接口,支持状态同步和事件传递 多通道交互:分别处理触控、鼠标和键盘输入,包含防误 阅读详情

相关推荐

Open UI5 源代码解析之1092:Image.js

本文分析了SAP OpenUI5框架中Image控件的源码实现。作为sap.ui.commons库的基础控件,Image将浏览器原生图片标签封装为框架控件,使其具备属性绑定、事件处理、无障碍访问等企业级功能。该控件通过元数据声明支持多种使用场景,包括工具栏项、表单内容等,并特别注重无障碍体验,通过decorative属性区分装饰性与内容型图片。虽然代码量仅百余行,但通过继承Control基类,获得了完整的UI5控件能力。分析表明,Image不仅是简单的图片展示组件,更是老版commons库中多个上层模块依赖

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1266

倒计时小插件,懒人专用

一、下载该插件。 下载地址:https://download.youkuaiyun.com/download/weixin_43684214/78400201 二、解压后,打开浏览器的开发者模式 三、安装后效果如图

胡云峰的博客 3631

Chrome倒计时「Chrome Countdown」-crx插件

“Chrome倒计时”可让您配置倒计时日期,并为即将到来的活动添加说明。点击... Chrome Countdown可让您配置倒计时日期以及添加即将发生的事件的描述。 然后,单击浏览器选项卡上的工具栏,将告诉您事件发生之前还剩下多少时间。 支持语言:English

安利一款倒计时插件---雨滴桌面

倒计时插件

beyond谚语的博客 1万+

深入解析DDR5 RFM机制:从JESD79-5标准到硬件实现

本文深入解析了DDR5内存标准中的关键机制——RFM(Refresh Management)。文章从JESD79-5标准出发,详细阐述了RFM如何通过RAA计数器实现从被动定时到主动响应的智能刷新管理,并探讨了其硬件实现细节、命令调度挑战及系统级设计考量,为芯片设计工程师优化DDR5内存子系统性能与可靠性提供了实践指导。

fff88的博客 491

深入解析SerDes系统中的时钟数据恢复电路(CDR)——基于Cadence的PLL/Bang-Bang/PS-PI架构实现与仿真

本文深入解析SerDes系统中的时钟数据恢复电路(CDR),重点探讨基于Cadence平台的PLL、Bang-Bang和PS-PI三种架构的实现与仿真。通过详细的技术对比和工程实践案例,揭示CDR在高速串行通信中的关键作用,并提供TSMC 28nm工艺下的优化策略与故障排查经验,助力工程师应对10Gbps以上SerDes设计挑战。

weixin_29202687的博客 251

Chrome 插件英雄榜

【回复“1024”,送你一个特别推送】昨天我在掘金上浏览沸点的时候,看到一个叫木子昭的全栈工程师在 GitHub 上做了一个专门为 Chrome 插件推荐写中文说明书的项...

非著名程序员 2400

数据科学常见模型总结(二)-倾向性得分匹配模型

PSM的核心思想是从未受干预的用户群体中,找到和干预对象一模一样的用户,这样就可以把因果效应归因到干预上。

wudelong0112的专栏 4891

一款免费且开源的屏幕录制工具,可录制屏幕、摄像头和音频,还内置了丰富的注释功能,效率翻倍!!!(带私活源码)

今天,向大家介绍一款功能强大的开源工具,目前已经收获12k star,它不仅可以录制屏幕,还可以轻松添加注释,提高工作效率。

m0_68103752的博客 1705

论文笔记:Group Equivariant Convolutional Networks

Group Equivariant Convolutional Networks 1、四个问题 要解决什么问题? 对卷积神经网络进行扩展,并提出一个在特定的变换(旋转、平移等,也可表示为一个特殊的群)下具有等变性的网络。 用了什么方法解决? 提出了一种新的卷积神经网络结构——群等变卷积神经网络(Group equivariant Convolutional Neural Network)...

hongbin_xu的博客 1万+

matlab tolx,Nelder-Mead算法matlab

Nelder-Mead算法适合变量数不是很多的方程求极值.原理:Nelder-Mead法是利用多面体来逐步逼近最佳点x*.设函数变量为n维,则在n维空间里多面体有(n+1)个顶点.设x1,x2,...,xn+1为多面体的顶点,且满足:f(x1)<=f(x2)<=...<=f(xn+1)Nelder-Mead法试着将多面体中最差的顶点xn+1(也就是函数的最大点)以新的最佳点替代,...

weixin_36485298的博客 1480

这款完全自定义配置的浏览器起始页插件值得你收藏!

Howdz Dashboard —— 一个基于 Vue3、Typescript、Vite 的完全自定义配置的浏览器起始页,支持 Chrome 插件和 Edge 插件。

weixin_43400476的博客 1375

OpenClaw Browser Relay Extension 鉴权失败与 invalid handshake 问题的终极解决方案

在使用 OpenClaw 浏览器插件 (Browser Relay Extension) 时,许多用户可能会遇到两个主要问题:一是配置端口错误导致的连接失败,二是鉴权失败 (Gateway token rejected)。本文将详细解析这两个问题并提供解决方案。

gerryke的blog 5559

手撸一个IDEA防沉迷插件

原文地址:https://juejin.cn/post/6914083794806898695前言当初年少懵懂,那年夏天填志愿选专业,父母听其他长辈说选择计算机专业好。从那以后,我的身上就...

程序IT圈 204

光度立体三维重建——光源标定

光源标定的目的是为了确定光源方向或强度,一般利用物体表面的明暗信息、阴影信息或者反射特性三类信息中的其中一种即可,也可以将三种信息结合。采用不同标定物,是利用不同标定物的反射特性获取更加精确的光源信息。

wfengzi5的博客 1561

接上篇,记录一下【Unity 3D对博途PLCSIM的通讯】文章有点长~仔细看,很基础

本文参考链接:西门子PLC丨PROFINET通讯仿真(虚拟通讯)做了一些更详细的优化,本文使用的类库并非原作者使用的类库。 首先,昨天项目已经创建好了,这边也加了一个InputField和一个Button,可以实现简单的读取,ok开始。 放入准备好的通讯类库; 新建一个博途的项目,本次测试使用博途V15,测试环境为虚拟机,Unity运行在本地计算机,建立博途项目流程如下: 新建项目,右键项目-属性-保护-对勾,如图: 不得不说的是,仿真中加密的FB块是无法下载的哦~ 添加CPU...

NS_Speak(IVAV) 8060

gemini-skill反检测原理:Stealth插件与CDP协议如何骗过Gemini的自动化识别

gemini-skill 是一个通过 CDP 协议操控 Gemini 网页版实现 AI 生图、对话与图片提取的浏览器自动化项目,它用 puppeteer-extra-plugin-stealth 构建完整的反检测层:隐藏 webdriver 标记、剔除自动化启动参数、以独立 CDP 端口连接真实浏览器配置文件——让 Gemini 的风控体系难以识别出"脚本控制"。本文完整拆解它的三层反检测原理与

gitblog_00940的博客 404

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

CRW-Extension 安装教程:3 分钟在 Chrome 与 Firefox 启用消费维权提醒

CRW-Extension 是一款免费的消费维权提醒浏览器扩展:当你浏览的网站、产品或服务在 Consumer Rights Wiki 上存在相关文章时,它会在页面角落弹出提示卡片,帮助你快速发现潜在的消费风险记录。本教程覆盖 Chrome、Firefox 两大平台的三种安装方式(商店一键安装、源码构建加载),并附完整设置指南与常见问题排查,新手 3 分钟即可上手 🚀 ## 为什么需要 CRW

gitblog_01025的博客 315

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Chrome 录屏神器!自称“最强大”的屏幕录制和注释工具!

【导语】:Screenity是一款简单易用的Chrome浏览器录屏扩展插件,功能强大,非常适合创作网课、教学视频。 简介 Screenity是一款功能强大且简单易用的Chrome录屏插件,直接在Google商店免费安装。这个工具不仅支持屏幕标注录像和多格式下载到本地或者保存到Google drive,还能简单剪辑视频,特别适合需要录屏教学或制作网课的朋友 Screenity具有以下功能特点: 1、可以无限制记录你的标签页、桌面、任何应用程序和摄像头。 2、通过在屏幕上的任何地方绘图、添加文本和创建箭

osfront的博客 8463

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Cap 录屏工具:5 分钟从零录出第一条能直接分享的视频

Cap 是一款开源录屏工具,能同时录屏幕、摄像头和麦克风,录完自动生成分享链接,可本地保存也可整套自托管,常被当作 Loom 的开源替代方案。 ## 30 秒认识 Cap Cap 的定位很直接:Loom 的开源替代。同一个仓库里装着桌面端(macOS / Windows)、网页控制台、Chrome 插件和手机 App。录制覆盖屏幕、摄像头和麦克风两种模式:Instant Mode 边录边上传,

gitblog_01199的博客 538

Cap 开源录屏工具上手教程:免费安装,三步发出第一条分享链接

Cap 是一款开源的 Loom 替代方案:录屏、编辑、生成分享链接,三步完成。它提供 macOS 和 Windows 桌面应用,也能用 Docker Compose 一键自托管,录制数据始终归你自己所有。 [![Cap 录屏分享页,视频链接即停即得](https://raw.gitcode.com/GitHub_Trending/cap1/Cap/raw/4f970412c1e512f351ed

gitblog_00220的博客 657

jquery 录屏_这个录屏工具在 GitHub 火了,秒杀 33 种同类工具

大家好,我是boy哥。本次推荐一个录屏神器「Screenity」,在GitHub上非常火爆,目前已狂揽4.1K颗星星。1. 功能亮点windows 和 Mac 自带的录屏软件功能都比较有限(windows可以快捷键 win+G 打开,Mac 可用 QuickTime Player),只能满足简单的录屏需求。Screenity 是一款基于 Chrome 的插件。它的功能亮点非常多,比如可以无限的录屏...

weixin_39545329的博客 300

挖掘录屏宝藏:Screenity 深度解析与使用指南

在数字内容创作与信息分享日益频繁的今天,录屏软件成为了众多创作者、教育者和办公族的必备工具。今天,我要给大家介绍一款在 GitHub 上收获了大量关注的开源录屏软件 ——Screenity。它功能强大且使用便捷,无论是录制教学视频、演示文稿,还是记录电脑操作过程,都能轻松胜任。下面就来详细了解一下。

好好学电脑 939

不可错过的前端开发资源大荟萃

本周我们带来的前端推荐包含当前热门的bootstrap,html5,css3等技术内容和新闻话题,如果你还想近一步学习如何开发,还可以关注我们的极客课程库,里面涵盖了现代开发技术的‘学’与‘习’的全新功能。希望对大家有所帮助!原文来自:极客标签

GBin1.com 1125

Node 模块如何跑进浏览器?playwright-crx 的 fs/buffer Shims 与 memfs 虚拟文件系统终极拆解

🎯 一文看懂 **playwright-crx**——让 Playwright 跑在 Chrome 扩展里的库——是如何用一层薄薄的 **Shims(垫片)** 把 `fs`、`buffer`、`process` 等 Node 模块"翻译"成浏览器代码,并用 **memfs 虚拟文件系统**在内存里开出整块硬盘的。无需 Node.js,照样读写文件、截图、追踪。 ## 1. playwrigh

gitblog_00512的博客 185

开源录屏工具Cap:从新手到专家的完整指南

还在为寻找一款既专业又易用的录屏软件而烦恼吗?传统录屏工具要么功能复杂难以上手,要么隐藏着昂贵的订阅费用,要么在视频质量上大打折扣。今天,我要为你介绍一个开源解决方案——Cap,它不仅完全免费,还能提供媲美商业软件的录制体验。 Cap是一个开源的Loom替代方案,专为需要高质量屏幕录制的用户设计。无论你是教师制作在线课程、开发者分享技术演示,还是团队进行远程协作,Cap都能满足你的需求。最令人惊

gitblog_01005的博客 973
下一篇: 分享一个Chrome插件 滚动截屏功能
paullooo
博客等级 码龄16年 18粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值