【发布时间】:2015-12-21 23:56:07
【问题描述】:
我正在创建一个 chrome 扩展。
每当您选择文本时,我都会在网页中与所选内容相邻添加两个按钮。
如果选择在文本区域或输入框内,我不希望发生任何操作。
这是我目前使用的代码
$(document).on("mouseup", function(e) {
var class1=e.target.nodeName;
var class2=e.target.firstChild;
console.log(class1);
console.log(class2);
if(class1=="INPUT" || class1=="TEXTAREA"){
}
else{
var selectedtext=window.getSelection().toString();
var chars=selectedtext.length;
if(chars>2){
var posx=e.clientX;
var posy=e.clientY;
var scrollDepth=$(window).scrollTop();
posy=posy+scrollDepth;
var location=findSelectionCoords(posx,posy);
create_Button(location);
}
}
});
创建按钮函数用于创建按钮。
如果用户在文本区域/输入框中选择了一些文本,此功能有效,控制台会显示输入/文本区域。 但有时文本区域或输入框也被选中,然后此功能失败。在 class1 中,我在这种情况下得到 DiV。
有人能推荐一个在所有情况下都有效的函数,并检测文本选择是否在输入或文本区域内
提前致谢
【问题讨论】:
标签: javascript jquery selection textselection