navigator 对象
剪切板
查看是否能够有读取剪贴板的权限
js
async function queryClipboardPermission() {
const result = await navigator.permissions.query({
name: 'clipboard-read',
})
if (result.state === 'granted') {
// 授权
}
else if (result.state === 'prompt') {
// 询问
}
else if (result.state === 'denied') {
// 未授权
}
console.log('result: ', result)
}获取剪贴板内容
js
async function getClipboardText() {
const clipboardText = await navigator.clipboard.readText()
return clipboardText
}客户端识别
ts
export const inBrowser = typeof window !== 'undefined'
export function isMobile(): boolean {
return inBrowser
? /ios|iphone|ipod|ipad|android/.test(navigator.userAgent.toLowerCase())
: false
}
export function isIOS(): boolean {
return inBrowser
? /ios|iphone|ipad|ipod/.test(navigator.userAgent.toLowerCase())
: false
}
export function isAndroid(): boolean {
return inBrowser ? /android/.test(navigator.userAgent.toLowerCase()) : false
}
export function isWechat() {
return /MicroMessenger/i.test(window.navigator.userAgent)
}