V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
oyps
V2EX  ›  程序员

小程序开发求助,如何实现这个需求

  •  
  •   oyps ·
    oyps · 100 天前 · 2415 次点击
    这是一个创建于 100 天前的主题,其中的信息可能已经有所发展或是发生改变。

    做一个类似于文档浏览器的组件,服务端提前把 Word 、PDF 、EPUB 、TXT 等不同格式的文档转换为标准的 HTML 字符串,HTML 中包含 img 标签,我的话使用 rich-text 组件可以实现基本的浏览,可以用 WXSS 调整字体和图片宽高。

    现在我希望实现,长按选中文本,然后监听到选中后,在选中的位置悬浮工具栏,包括划线、复制、分享、词典这些,就和看书阅读软件那样子。

    大佬们有没有好的方案给小弟我参考参考。

    目前已知 WPS 和腾讯文档的文档阅读器,都是直接嵌入了 WebView ,并不是使用小程序的原生能力实现的,大概能猜到,是小程序能做的功能实在有限。

    现在的话,我用 rich-text 能实现基本的阅读和选中复制,但是无法监听到选中并弹出工具栏。

    7 条回复
    GarethChu
        1
    GarethChu  
       100 天前
    wxParse 试试
    oyps
        2
    oyps  
    OP
       100 天前
    @GarethChu 好像无法监听到 select 事件,只能用于渲染文档
    pikachu233
        3
    pikachu233  
       100 天前
    自己去做富文本渲染 具体可以参考一些 ui 框架富文本渲染的实现 删删改改就行
    oyps
        4
    oyps  
    OP
       100 天前
    @pikachu233 自己做富文本渲染的话,是动态创建 view 组件吗?那如何解决跨多个组件 select 文本呢
    ae86
        5
    ae86  
       100 天前
    那你为什么不直接用 WebView 呢?
    wuoty
        6
    wuoty  
       100 天前
    之前尝试在微信小程序里开发一个代码编辑器,但是用原生能力实在做不到,但如果用 WebView 就能灵活很多,当然,如果用 Webview 的话,就需要处理小程序和页面的通信了。
    oyps
        7
    oyps  
    OP
       100 天前
    @ae86 WebView 需要企业身份,但是我只是仅仅出于技术研究,看能不能寻求一种原生的实现
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1089 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 22:59 · PVG 06:59 · LAX 14:59 · JFK 17:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.