我有以下 jQuery 摘录:
Tselector.mouseup = function() {
var sel = getSelectionCharOffsetsWithin(document.getElementById("base"));
//...
}
每次我在div
具有上述功能的标签中选择文本时id=base
,都会在释放鼠标按钮时触发。getSelectionCharOffsetsWithin(element)
是一种解析选择的方法(我需要进一步的步骤)。
我现在要做的是弹出一个工具提示,向我显示我可以对选择做什么的选项。(对于那些熟悉 iOS 的人来说,它类似于我在 Web 浏览器中选择文本时的功能。)
问题是 jQuery 需要一个 DOM 元素来执行操作。例如,当使用Tipsy时:
$('#foo').tipsy();
工具提示与div
具有id=foo
.
触发该mouseup
功能时,我选择的文本没有这样的元素,因此我无法将我的选择与工具提示联系起来。
是否有可能在不连接到 DOM 元素的情况下直接调用 jQuery 函数(例如,将工具提示与鼠标位置连接)?如果没有,是否可以使用正在创建并连接到我的事件但未永久存储在 HTML 代码中的临时 DOM 元素来解决问题?
这是一个证明这一点的小提琴:http: //jsfiddle.net/noplacetoh1de/bYNmb/
感谢您的任何建议!