Javascript 非表单元素是否有onselect事件?

Javascript 非表单元素是否有onselect事件?,javascript,javascript-events,Javascript,Javascript Events,假设当用户突出显示包含该跨度的文本时,我想隐藏一个跨度,目的是将该文本复制到他的剪贴板上 例如: <p>The dragon <span class="tooltip">a large, mythical beast</span> belched fire at St. George.</p> 龙一种神秘的大野兽在打嗝 向圣乔治开火 我发现在FirefoxMac中,span.tooltip将从视图中消失(根据我的CSS声明),但当它被复制到剪贴

假设当用户突出显示包含该跨度的文本时,我想隐藏一个跨度,目的是将该文本复制到他的剪贴板上

例如:

<p>The dragon <span class="tooltip">a large, mythical beast</span> belched
fire at St. George.</p>
龙一种神秘的大野兽在打嗝
向圣乔治开火


我发现在FirefoxMac中,span.tooltip将从视图中消失(根据我的CSS声明),但当它被复制到剪贴板时,它将显示在剪贴板中。我想(错了吗?)如果我说“onHighlight,hide tooltip”,可能不会发生这种情况。

虽然可能更复杂,为什么不在
元素上设置一个
onmousedown
事件,然后事件将附加一个
onmousemove
事件和
onmouseout
事件,因此,如果鼠标在按下按钮时移动,则删除span元素上的类,一旦用户退出,则可以将元素放回原处


这可能有点棘手,您可能还想查找按键,或者确定其他时间您想知道何时放回css类,但我相信这将是一个选项。

听起来您需要更进一步,在突出显示时,删除
并保存对它的引用。高亮显示完成后,重新插入对对象的引用

 // copy start detected
 var savedTooltip = $('.tooltip').remove();

 // later that day when copy finished 
 $('p').append(savedTooltip);

如果标记中的
位置很重要,则必须创建一个临时引用元素,以便知道在DOM中重新插入它的位置。

谢谢,James!我试试看。