MCPcopy Index your code
hub / github.com/chunshand/mark-highlight

github.com/chunshand/mark-highlight @v0.0.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.0.2 ↗ · + Follow
30 symbols 52 edges 5 files 19 documented · 63% updated 3y agov0.0.2 · 2022-12-01★ 38

Browse by type

Functions 23 Types & classes 7
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

mark-highlight(beta)

Languages: 简体中文 | English

mark-highlight是一个简单轻量的内容选中划线高亮小工具。

  • 保留元素的内部结构
  • 对于选中区域的标记操作,有很简单的数据符号,方便下次访问时再次渲染绘制选中区域,前提是内容不变的情况下。
  • 适用于笔记、博客、电子书、批注等场景。

./image/demo.png

  • 支持下划线 高亮类型的标记
  • 支持标记区域点击事件
  • 支持标记区域设置自定义类名
  • 支持视图更新标记区域同步更新

demo

示例代码

在线演示

如果感觉还不错的话,来个star~

安装

<script src="https://github.com/chunshand/mark-highlight/raw/v0.0.2/dist/index.umd.js"></script>

or

npm install mark-highlight

使用

 let mark = new Mark("idName"|HtmlElement);
 mark.render();

回调

mark.on('render', (el) => {
    console.log('render dom',el);
})
mark.on('selected', (data) => {
    let markStr = data.markStr;
    let {
        top_left,
        top_center,
        top_right,
        // ...
    } = data.position;
})

设置高亮

mark.highlight(markStr, 'className', (e) => {
    // 高亮区域点击后回调
    // 获取点击元素的_rangeStr
    let _markStr = e.target.getAttribute('data-id')

})

设置下划线

mark.underline(markStr, 'className', (e) => {
    let _markStr = e.target.getAttribute('data-id')
})

删除标记

mark.remove(markStr, 'underline|highlight');

添加标记

mark.add({
    markStr:"",
    type: 'underline|highlight',
    className: "",
    data: {},
    clirk:()=>{},

});

显示所有

mark.show();

隐藏所有

mark.hide();

清空标记

mark.clear();

获取所有标记

mark.getMarks();

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

Shape

Method 23
Interface 4
Class 2
Enum 1

Languages

TypeScript100%

Modules by API surface

src/index.ts30 symbols

For agents

$ claude mcp add mark-highlight \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page