资讯专栏INFORMATION COLUMN

Electron 页内查找模块介绍

Yuanf / 299人阅读

摘要:指定查找窗口显示或隐藏的过渡周期。指定查找窗口相对于父级定位元素顶部偏移量。配置查找窗口阴影色。实例方法使用创建的实例具有以下方法当查找窗口关闭时,打开窗口。当查找窗口已经打开时,聚焦输入框。关闭窗口,清除对象的引用,释放内存。

简介

实现Electron app页内按关键字查找匹配文本的功能

特征

依赖于Electron的findInPage API

支持使用者灵活配置UI界面

支持区分大小写

当用户输入时自动查找

查找输入框文本隔离,不会被匹配到

支持以下Electron版本 ^1.8.7, ^2.0.0, ^3.0.0, ^4.0.0

支持以下平台 Windows, Linux, Mac

演示 默认UI

定制化UI

安装
$   npm install electron-find --save
使用
# 引入模块
import { remote, ipcRenderer } from "electron"
import { FindInPage } from "electron-find"

# 使用默认配置来创建实例
let findInPage = new FindInPage(remote.getCurrentWebContents())
findInPage.openFindWindow()

# 开启预加载选项,创建实例的时候会同时加载查找窗口相关dom
let findInPage = new FindInPage(remote.getCurrentWebContents(), {
  preload: true
})
findInPage.openFindWindow()

# 配置父节点元素, 默认为 document.body
let findInPage = new FindInPage(remote.getCurrentWebContents(), {
  parentElement: document.querySelector("#id")
})
findInPage.openFindWindow()

# 配置查找窗口显示或隐藏的过渡周期, 默认为 300 (ms)
let findInPage = new FindInPage(remote.getCurrentWebContents(), {
  duration: 200
})
findInPage.openFindWindow()

# 配置查找窗口相对于父级定位节点的偏移量
let findInPage = new FindInPage(remote.getCurrentWebContents(), {
  offsetTop: 20,
  offsetRight: 30
})
findInPage.openFindWindow()

# 自定义UI界面颜色
let findInPage = new FindInPage(remote.getCurrentWebContents(), {
  boxBgColor: "#333",
  boxShadowColor: "#000",
  inputColor: "#aaa",
  inputBgColor: "#222",
  inputFocusColor: "#555",
  textColor: "#aaa",
  textHoverBgColor: "#555",
  caseSelectedColor: "#555"
})
findInPage.openFindWindow()

# 参考demo
npm install
npm run e
快捷键

Enter: 查找下一个
Shift + Enter: 查找上一个
Esc: 关闭窗口

另外, 可以参考demo,使用全局快捷键来打开窗口。

API 类: FindInPage

new FindInPage(webContents, [options])

webContents Object(required) - 渲染进程的webContents对象

options Object(optional)

preload Boolean - 创建实例的时候是否预加载查找窗口。 默认为 false

parentElement Object - 指定查找窗口的父级节点。 默认为 document.body

duration Number - 指定查找窗口显示或隐藏的过渡周期。 默认为 300 (ms)。

offsetTop Number - 指定查找窗口相对于父级定位元素顶部偏移量。 默认为 5

offsetRight Number - 指定查找窗口相对于父级定位元素右边偏移量。 默认为 5

boxBgColor String - 配置查找窗口背景色。 默认为 "#ffffff"

boxShadowColor String - 配置查找窗口阴影色。 默认为 "#909399"

inputColor String - 配置输入框文本颜色。 默认为 "#606266"。

inputBgColor String - 配置输入框背景颜色。 默认为 "#f0f0f0"

inputFocusColor String - 配置输入框聚焦时的边框颜色。 默认为 "#c5ade0"

textColor String - 配置查找窗口中文本颜色。 默认为 "#606266"

textHoverBgColor String - 配置鼠标悬停文本时的背景色。 默认为 "#eaeaea"

caseSelectedColor String - 配置区分大小写选项选中时的边框颜色。 默认为 "#c5ade0"

实例方法

使用new FindInPage 创建的实例具有以下方法:
 
findInPage.openFindWindow()
当查找窗口关闭时,打开窗口。 当查找窗口已经打开时,聚焦输入框。
 
findInPage.closeFindWindow()
关闭窗口。
 
findInPage.destroy()
关闭窗口,清除对象的引用,释放内存。
 
 
查看更多:https://github.com/TheoXiong/electron-find

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/101047.html

相关文章

  • Electron应用更新的一个简单方案

    摘要:如果第一次分发倒是没啥问题,但是每次都这样整个应用让运营手动更新,运营肯定不爽,必须得搞个自动更新方案出来。根据这样的更新方案,项目的目录结构也得做一点改变,在我的项目下主要三个文件夹,,。 第一次开发Electron应用 背景 由于工作内容大多是一些日常活动,虽然活动都以已经做好模板为主,实际并不需要什么开发量,一般都是调一下按钮的位置、颜色、字体大小什么的就可以立即发布,但是运营觉...

    stormjun 评论0 收藏0
  • Electron应用更新的一个简单方案

    摘要:如果第一次分发倒是没啥问题,但是每次都这样整个应用让运营手动更新,运营肯定不爽,必须得搞个自动更新方案出来。根据这样的更新方案,项目的目录结构也得做一点改变,在我的项目下主要三个文件夹,,。 第一次开发Electron应用 背景 由于工作内容大多是一些日常活动,虽然活动都以已经做好模板为主,实际并不需要什么开发量,一般都是调一下按钮的位置、颜色、字体大小什么的就可以立即发布,但是运营觉...

    CastlePeaK 评论0 收藏0
  • electron实现qq快捷登录!

    摘要:之前本来想不写这个功能的结果客户死活要登录实在没办法就写了顺便写个文章在写之前有两个问题打开授权页面点击页面中的链接会又打开一个页面授权之后是否成功很难去判断不过脑海中有一个想法就是就是一个类似于浏览器一样既然是浏览器那肯定可以阻止链接的点 之前本来想不写这个功能的,结果客户死活要qq登录! 实在没办法就写了,顺便写个文章!在写之前有两个问题:1: 打开qq授权页面点击页面中的链接会又...

    channg 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<