【问题标题】:Can anyone describe the process flow for ranges?任何人都可以描述范围的流程吗?
【发布时间】:2012-07-18 23:56:42
【问题描述】:

http://jsfiddle.net/JonVisc/ufHBd/4/

所以在 jsFiddle 中的基本步骤是:

  • 单击“Hello World”上的任意位置(未突出显示):范围为:true
  • 拖动以突出显示(以突出显示'll Wor'为例:范围为:false
  • 单击突出显示范围内的任意位置:范围为:false

紧接着该点突出显示消失,这是一个事件吗?基本上我需要检测突出显示的清除(并随后清除保存的范围,因为突出显示不存在)但不幸的是我不知道如何。

点击(之后不突出显示)返回 false 的预期结果,但由于我希望在上一次点击中获得该结果,所以这并不理想。

【问题讨论】:

    标签: javascript events contenteditable


    【解决方案1】:

    实际上,结果取决于浏览器:在 Mozilla 中单击未折叠的选择时,当点击事件触发时,选择会被折叠,但在 WebKit 中,选择仍然是未折叠的。

    至于检测它,您的选择是有限的。最近的 WebKit 和 IE 一直回到 5.5,在 document 上触发了一个 selectionchange 事件,这听起来像你想要的:

    http://jsfiddle.net/ufHBd/5/

    Mozilla 和 Opera 不会在常规内容中触发任何有用的与选择相关的事件,您所能做的就是处理鼠标和按键事件。这个答案的 cmets 有更多背景知识:https://stackoverflow.com/a/8443541/96100

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-11-01
      • 1970-01-01
      • 2016-04-21
      • 2011-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多