场景:用户在文本框中突出显示某些文字,然后粘贴到所选内容上。触发事件即会触发。
为了在我的自定义粘贴处理程序中正确处理此问题,我需要知道粘贴发生时突出显示的内容。
虽然(至少在Firefox中)显示浏览器取消选择用户的选择,然后调用粘贴处理程序,这意味着我无法通过使用{{来找出所选内容1}} / window.getSelection
。即使选择了要覆盖的文本,它们在粘贴事件运行时也是空的。
如果粘贴事件没有被拦截,是否有办法获取将被粘贴覆盖的文本(因为它已被选中)?
答案 0 :(得分:0)
显然,您应该能够在window.getSelection()
的粘贴事件中获取所选文本,但由于bug in firefox而无法在16年后仍然无法修复!
解决方法是使用selectionStart
和selectionEnd
,如:
var SelStart = Field.selectionStart;
var SelEnd = Field.selectionEnd;
var SelectedText = Field.value.substring(SelStart,SelEnd);