像一个页面
如果用户双击页面中的任何单词,弹出框将显示并显示该单词的定义.
我可以想到一种方法来使用DOM脚本来分解页面中的所有单词,然后使它们中的每一个都在一个单独的“span”元素之下,但否则不是真的,如果所有的文本都在“p”元素,那么“p”元素节点被触发来处理双击事件,但是没有简单的方法来告诉哪个单词被点击?
解决方法
您只需将一个双击事件添加到整个文档中,如下所示:
function get_selection() { var txt = ''; if (window.getSelection) { txt = window.getSelection(); } else if (document.getSelection) { txt = document.getSelection(); } else if (document.selection) { txt = document.selection.createRange().text; } return txt; } $(document).dblclick(function(e) { var t = get_selection(); alert(t); });
如果你只想让这个工作在选择的段落,你可以将选择器更改为p.myclass或类似的东西.这取决于双击一个单词突出显示在浏览器中的事实.不知道如何answer.com这样做,说实话.