2016-06-22 44 views
0

我有一个可满足的跨度放置在<a>标记中。我希望能够编辑跨度内的文本,因此,重要的是:Firefox中超链接内部的可满足跨度问题

  • 地方点击鼠标上的光标停在某个跨度内
  • 用鼠标
  • 跨度内的文本的选择部分

只要超链接中有href属性(在我的情况下也需要),它们都不能在Firefox中工作。没有这个属性没有问题,并且在Chrome中没有问题。

请在JSFiddle上尝试my example

<ul> 
    <li> 
    <a href="#"> 
     <span contenteditable="true">PlacingCursorOrTextSelectionInFirefoxImpossible</span> 
    </a> 
    </li> 
    <li> 
    <a> 
     <span contenteditable="true">noProblemsHereSoFar</span> 
    </a> 
    </li> 
</ul> 

回答

0

,你能做些什么来提高点击行为是为了防止它的传播是这样的:

<a href="#"> 
    <span contenteditable="true" onclick="event.stopPropagation();"> 
    PlacingCursorOrTextSelectionInFirefoxImpossible 
    </span> 
</a> 

不幸的是,这仅允许把光标span内,但它somewhy投入它的开始,而不是点击的地方。

要启用选择,则需要防止拖拉的行为,但它是可以改变的a元素:

<a href="#" draggable="false"> 
    <span contenteditable="true" onclick="event.stopPropagation();"> 
    PlacingCursorOrTextSelectionInFirefoxImpossible 
    </span> 
</a> 

但哇,居然draggable="false"固定“光标移至开头”的错误!这里的工作例子(在FF 47测试):https://jsfiddle.net/8v1ebkfd/4/

+0

不错!我只是无法弄清楚使用而没有链接到某个东西的目的。 –

+0

@MilchePatern好吧,我可以想象一个任意的链接,它不应该在编辑(所见即所得)模式下作为链接工作。 – YakovL