在移动设备上,OnClick在React JS中不起作用
P粉342101652
P粉342101652 2023-08-18 11:58:16
0
1
382

在验证签名时(请参阅演示视频),在平板电脑/移动设备上,onClick不会触发onSet()函数,但在计算机上有效。 在平板电脑/移动设备上,onClick仅在按钮外部有效。

我希望在平板电脑/移动设备上,onClick能够触发函数。

演示视频:https://streamable.com/lujzg0

项目:https://hh8n2j.csb.app/(沙盒)

DraggableSignature:

 //DraggableSignature.js import Draggable from "react-draggable"; import { FaCheck, FaTimes } from "react-icons/fa"; import { errorColor, goodColor, primary45 } from "../utils/colors"; export default function DraggableSignature({ url, onEnd, onSet, onCancel }) { const styles = { container: { position: "absolute", zIndex: 100000, border: `2px solid ${primary45}`, }, controls: { position: "absolute", right: 0, display: "inline-block", backgroundColor: primary45, // borderRadius: 4, }, smallButton: { display: "inline-block", cursor: "pointer", padding: 4, }, }; return (  
signature
); }
App.js:


{signatureURL ? (
       <可拖动签名 url="{签名URL}" oncancel="{()" =>
        ; { setSignatureURL(空); }} onSet={async()=>; { const { 原始高度, 原始宽度 } = 页面详细信息; 常量尺度 = 原始宽度 / documentRef.current.clientWidth; 常量 y = documentRef.current.clientHeight - (位置.y - 位置.offsetY + 64 - documentRef.current.offsetTop); 常量 x = 位置.x - 160 - 位置.offsetX - documentRef.current.offsetLeft; // 相对于实际文档大小的新 XY 常量新Y = (y * 原始高度) / documentRef.current.clientHeight; 常量新X = (x * 原始宽度) / documentRef.current.clientWidth; const pdfDoc = 等待 PDFDocument.load(pdf); const 页面 = pdfDoc.getPages(); const 第一页 = 页数[页数]; const pngImage = 等待 pdfDoc.embedPng(signatureURL); const pngDims = pngImage.scale(scale * 0.3); 第一页.drawImage(pngImage, { x:新X, y:新Y, 宽度:pngDims.width, 高度:pngDims.height, }); 如果(自动日期){ 第一页.drawText( `电子签名:${dayjs().format( “日/月/年 à HH:mm:ss” )}`, { x:新X, y:新Y - 10, 尺寸:14 * 比例, 颜色:RGB(0.074,0.545,0.262), } ); } const pdfBytes = 等待 pdfDoc.save(); const blob = new Blob([newUint8Array(pdfBytes)]); const URL = 等待 blobToURL(blob); 设置Pdf(网址); 设置位置(空); setSignatureURL(空); }} onEnd={设置位置} >> ) : 无效的}

谢谢

我将onClick更改为onTouchtart,我更改了按钮位置,我使用了另一个CSS库。

P粉342101652
P粉342101652

全部回复 (1)
P粉327903045

尝试添加onTouchStart事件,并将按钮更改为div组件,并将其样式设置为按钮样式

    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责声明 Sitemap
    PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!