当前位置: 首页 > news >正文

网页翻译英文网站标题seo外包优化

网页翻译英文,网站标题seo外包优化,动态网页设计总结,沧州做网站公司前些天,写了探索Rust编写基于web_sys的WebAssembly编辑器:挑战输入光标定位的实践,经过后续的开发检验,我发现了一个问题,就是光标消失了。为了继续输入,用户需要再次使用鼠标点击。现在我已经弄清楚了导致…

前些天,写了探索Rust编写基于web_sys的WebAssembly编辑器:挑战输入光标定位的实践,经过后续的开发检验,我发现了一个问题,就是光标消失了。为了继续输入,用户需要再次使用鼠标点击。现在我已经弄清楚了导致这个问题的原因,即需要找到text node来设置光标。

先上代码

    let oninput = use_callback(move |e: InputEvent, content1_ref1| {if let Some((selected_str, selection, parent_element)) = get_selection_items() {if let Some(modified_text) = parse(&selected_str) {parent_element.set_inner_html(&modified_text); // 更新解析后的输入                    selection.remove_all_ranges().unwrap(); // 移除焦点let div = content1_ref1.cast::<HtmlDivElement>().unwrap(); div.focus();let first_child = parent_element.first_child().unwrap().first_child().unwrap(); // 这一行是关键let new_range = Range::new().unwrap();                    new_range.set_start(&first_child, 3); // 将光标设置到第3个字符的位置new_range.collapse();selection.add_range(&new_range);}}},(content1_ref.clone()),);

在上面的源代码中,我已经用注释标记了first_child,这里是关键,因为这里获取到的就是text node。为什么一定要text node呢?原因在于range.set_start的第一个参数,参考mozilla的文档:

If the startNode is a Node of type Text, Comment, or CDataSection, then startOffset is the number of characters from the start of startNode. For other Node types, startOffset is the number of child nodes between the start of the startNode.

即如果输入的参数是text node,那么上面的那个参数3就代表从开始到第3个字符的位置;如果是其它类型的node,就表示从开头到第3个字节点的位置。

那什么是text node呢?在web_sys中,它的类型引入就是web_sys::Text。可以用is_instance_of::<Text>()来判断:

if first_child.is_instance_of::<Text>() { ... }

在mozilla中,关于Text的解释如下:

The Text interface represents a text node in a DOM tree.

现在,我们清楚了,导致问题的原因是没有使用text node,以及在set_start方法中,如果node type不是text node,光标将如何定位。其实关于set_start的这段解释,我很早就看见了,但是由于对text node无感,就直接给忽略了。因此,才绕了这么大的一个圈子。
好了,这个小结就到这里,欢迎交流,可以想像,后面的路会更难走。

http://www.dt0577.cn/news/41586.html

相关文章:

  • 深圳微信网站东莞免费建站公司
  • 如何添加网站logo域名注册需要多少钱?
  • WordPress注册要花钱优化大师官网入口
  • 不会网站维护可以做吗十大经典营销案例
  • 设计师必备网站企业邮箱注册
  • 怎么建网站?自己怎么免费做网站
  • 做淘宝客网站有什么服务器泉州关键词优化排名
  • 商城网站建设多少钱人力资源培训网
  • 自动获取网站缩略图seo技术博客
  • 沈阳市做网站的公司青岛网站seo公司
  • 网站首页ico怎么做新闻发稿
  • 怎么做网站优化目前最好的营销模式
  • 深圳网站定制价格低seo关键词优化软件手机
  • 软件大全app网络优化软件有哪些
  • 可以做网站AB测的软件比较靠谱的推广公司
  • 网络广告营销的好处北京seo关键词排名优化软件
  • xmapp搭建wordpressseo是什么意思seo是什么职位
  • 昆山自适应网站建设网络营销的主要手段
  • 网站瀑布流滚动加载头条新闻 最新消息条
  • 网站做图分辨率是多少合肥网站优化方案
  • 专门做尾单的那个网站叫啥山西seo关键词优化软件搜索
  • 网站编辑应该怎么做微信朋友圈推广
  • 校园网网站建设百度营销后台
  • c 网站开发 vs2012关键词点击优化工具
  • 网站访问者qq域名申请
  • 吉林网站建设关键词搜索排名查询
  • 网站建设开发的目的互联网广告投放平台加盟
  • wordpress 发布到公网厦门seo排名优化方式
  • 做图的模板下载网站有哪些内容新闻式软文经典案例
  • 兰州做网站哪家好企业网站营销优缺点