Bar*_*uch 6 javascript bookmarklet
如果我不知道哪一个是活动的(聚焦的),如何从文本框/文本区域中获取所选文本.我正在尝试创建一个小书签,它将纠正页面上任何类型的输入中的选定文本.
pim*_*vdb 20
对于选择,你想要selectionStart和selectionEnd.
至于目前关注的元素,请使用document.activeElement.
因此,您可以使用以下组合:http://jsfiddle.net/rBPte/1/.
正如Tim Down指出的那样,你需要一个更复杂的Internet Explorer 8或更低版本的解决方案:在textarea中的插入位置,从一开始就是字符
function getText(elem) { // only allow input[type=text]/textarea
if(elem.tagName === "TEXTAREA" ||
(elem.tagName === "INPUT" && elem.type === "text")) {
return elem.value.substring(elem.selectionStart,
elem.selectionEnd);
// or return the return value of Tim Down's selection code here
}
return null;
}
setInterval(function() {
var txt = getText(document.activeElement);
document.getElementById('div').innerHTML =
txt === null ? 'no input selected' : txt;
}, 100);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14562 次 |
| 最近记录: |