首页 > 其他分享 >html5Plus 读写剪切板(粘贴板读取、写入、编辑)

html5Plus 读写剪切板(粘贴板读取、写入、编辑)

时间:2022-12-01 11:56:21浏览次数:47  
标签:粘贴板 html5Plus generalPasteboard plus 剪切板 var android text

空了封装个Helper类,先将就看吧。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
    <title></title>
	<style>
		button {
			width: 66px;
			height: 88px;
		}
		
		body {
			background-color: blueviolet;
		}
	</style>
</head>
<body>
	<button id="writeClipBoardButton">写入剪切板</button>
	<button id="readClipBoardButton">读取剪切板</button>
	<script type="text/javascript">
		//测试写入剪切板
		testWriteClipBoardButton();
		
		//测试读取剪切板
		testReadClipBoardButton()
		
		//测试写入剪切板
		function testWriteClipBoardButton()
		{
			//写入剪切板按钮
			var writeClipBoardButton = document.getElementById('writeClipBoardButton');
			
			writeClipBoardButton.onclick = function()
			{
				//检测plus功能是否已经可以使用
				if(window.plus)
				{
					//写入的内容
					var writeText = "Panda666" + Math.random();
					
					//写入剪切板
					writeTextToClipBoard(writeText);
				}
				else
				{
					console.log("Plus 功能未启用");
				}
			};
		}
		
		//测试读取剪切板
		function testReadClipBoardButton()
		{
			//读取剪切板按钮
			var readClipBoardButton = document.getElementById('readClipBoardButton');
			
			readClipBoardButton.onclick = function()
			{
				//检测plus功能是否已经可以使用
				if(window.plus)
				{
					//读取剪切板
					var clipBoardText = readTextFormClipBoard();
					console.log(clipBoardText);	
				}
				else
				{
					console.log("Plus 功能未启用");
				}
			};
		}
		
		/**
		 * 复制文本到剪切板
		 * @param {Object} text
		 */
		function writeTextToClipBoard(text)
		{
			if (plus.os.name == "Android")
			{
			    var Context = plus.android.importClass("android.content.Context");
			    var main = plus.android.runtimeMainActivity();
			    var clip = main.getSystemService(Context.CLIPBOARD_SERVICE);
			    plus.android.invoke(clip, "setText", text);
			}
			else if (plus.os.name == "iOS")
			{
			    var UIPasteboard = plus.ios.importClass("UIPasteboard");
			    var generalPasteboard = UIPasteboard.generalPasteboard();
			    //设置/获取文本内容:
			    generalPasteboard.plusCallMethod({
			      setValue: text,
			      forPasteboardType: "public.utf8-plain-text"
			    });
			    generalPasteboard.plusCallMethod({
			      valueForPasteboardType: "public.utf8-plain-text"
			    });
			}
		}
	
		/**
		 * 读取剪切板的内容
		 * 注意:IOS端未进行测试
		 */
		function readTextFormClipBoard()
		{
			if (plus.os.name == "Android")
			{
			    var Context = plus.android.importClass("android.content.Context");
				var main = plus.android.runtimeMainActivity();
				var clip = main.getSystemService(Context.CLIPBOARD_SERVICE);
				var result = plus.android.invoke(clip, "getText").toString();
				return result;
			}
			else if (plus.os.name == "iOS") // 注意:IOS端未进行测试
			{
			    var UIPasteboard = plus.ios.importClass("UIPasteboard");
				var generalPasteboard = UIPasteboard.generalPasteboard();
				var _val=generalPasteboard.plusCallMethod({valueForPasteboardType:"public.utf8-plain-text"});
				return _val || '';
			}
		} 
	</script>
</body>
</html>

标签:粘贴板,html5Plus,generalPasteboard,plus,剪切板,var,android,text
From: https://www.cnblogs.com/cqpanda/p/16936533.html

相关文章

  • JavaScript 读写剪切板
    浏览器环境下,JavaScript读写剪切板读取剪切板varp=navigator.clipboard.readText();p.then(function(clipText){console.log(clipText);//剪贴板内容});......
  • shell命令粘贴板
    shell命令ssh-keygenssh-keygen-ted25519-C"[email protected]"tartarzcfxx.tar.gzxx/tarzxfxx.tar.gzsed#每行的所有xx替换为yysed-i's/xx/yy/g'......
  • unity3d:复制选中物体transform信息到剪切板
    usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;usingUnityEditor;publicclassSaveTransInfo:EditorWindow{[MenuItem("SaveTrans......
  • ABAP实现粘贴板的操作,复制粘贴_
    自己玩儿项目里暂时用不到在ABAP中的CLASS:CL_GUI_FRONTEND_SERVICES中提供了两个方法来控制与剪贴板内容的导入导出,分别是:CLIPBOARD_EXPORT和CLIPBOARD_IMP......
  • Mac软件推荐|MacOS上5款实用剪切板工具
    还在为寻找好用的剪切板工具而发愁吗?小编给大家带来了5个超棒的剪切板工具,使用方便。有需要的可以来了解一下哦!MacOS上5款实用剪切板工具1.OkaPasteformacOkaPaste......
  • IT工具知识-14:如何通过adb操作安卓剪切板?
    1.安装apk下载地址2.运行服务(每次重启系统都需要运行一次)adbshellamstartserviceca.zgrs.clipper/.ClipboardService3.设置剪切板内容adbshellambroadcast-a......
  • 剪切板自动处理
    通过监听剪切板内容,在发生变化时,将内容替换为去除所有空白字符的新内容点击查看代码importreimporttimeimportpyperclipclassApp():defdeal_str(self,s......
  • HTML5PLUS实现类似右侧弹出菜单
    一、实现效果使用【plus.webview】对象实现右侧弹出菜单栏:点击菜单图标弹出菜单列表,点击页面其它地方或点击【关闭菜单】收缩菜单。 二、源码index.html:<!DOCTYPE......
  • C# WPF 访问剪切板报错
    如果剪贴板操作失败(例如 HRESULT0x800401D0(CLIPBRD_E_CANT_OPEN) 错误),则会引发相应的 ExternalException (,这是一种ExternalException)。由于Win32 OpenClipbo......