标签: selection

JavaScript Drag&Select功能正确完成

我正在尝试使用HTML和JavaScript编写拖动和选择功能.我的意思是会有一组具有任意绝对位置的物体.我希望能够将光标拖到它们布局的区域上.可以将其视为RTS策略(选择单位)或任何矢量图形编辑器(选择用于移动它们和编辑的对象).

首先,我了解Google和SO的前几页中出现的内容.因此,我绝不会要求为我搜索这些内容并在此处发布一些随机链接.

我能找到的大多数解决方案都存在某些缺陷.主要问题是抑制实际文本选择,这似乎违背了Web浏览器的本质.一些代码片段导致选择闪烁,我发现非常烦人.有些在所有主流浏览器中都表现不佳.

我要求您实际使用或看到成功使用的代码/库的建议.

第二件事是,我想真正理解抑制选择背后的JavaScript内部.如何在理论上做到这一点.是否有任何非hackish方式实现这一目标?

我能找到的最接近的是:http: //view.jquery.com/tags/ui/1.5b2/demos/ui.selectable.html

然而它似乎与jQuery UI紧密结合,后者又需要jQuery 1.3.x而我真的很期待使用jQuery 1.5

javascript jquery jquery-ui selection drag

14
推荐指数
2
解决办法
3万
查看次数

仅在列表视图中选择一个

我有问题找到解决方案在我的WPF应用程序的listview中创建一个选择行.

我该怎么办?

c# wpf listview selection

14
推荐指数
3
解决办法
2万
查看次数

阻止从Shift +单击中进行选择

可能重复:
css规则禁用文本选择突出显示
双击后阻止文本选择

即使我的事件正确地排除默认操作,单击文本然后按住Shift键单击其他文本也会导致选择.在这种情况下,这是不合需要的行为,因为我使用Shift-click来多选这些元素.

我需要做些什么才能在这里专门禁用选择吗?

编辑:在这里找到我自己的问题的解决方案.抱歉浪费了人们的时间.

html javascript selection

14
推荐指数
1
解决办法
4821
查看次数

Java:选定行的索引在排序时不会更改

我有一个Jtable,我称之为方法 table1.setAutoCreateRowSorter(true);.所以这很好用.但我在我的JFrame类中也有一个方法,当我按下按钮时会触发它.它使用此代码获取选定的行索引 int selectedRows[] = this.table1.getSelectedRows();.并显示所选间隔中对应的第一行的编辑窗口.

问题是,如果我没有点击列的标题(我的意思是我根本不对它们进行排序),我的方法是完美的.但是当我对行进行排序时,行的索引似乎根本没有变化 - 从而导致旧行的编辑窗口最初在进行任何排序之前处于该位置.

我正在使用JDK 6可以给任何提示吗?

java swing jtable selection

13
推荐指数
2
解决办法
9022
查看次数

如何在QListView中选择一行

我仍然在努力使用QListView,我试图在视图中选择一个特定的行,我无法弄清楚如何做到这一点.

我在StackOverflow上发现了一个类似的问题,它建议使用createIndex()模型的方法,但是这个方法是受保护的(可能它曾经是公共的但不再是),所以这对我不起作用.有什么建议吗?

qt selection qlistview

13
推荐指数
1
解决办法
2万
查看次数

使用createEvent选择另一个元素后面的文本

我有一个场景,我有一些文本,应该是用户可选择的.问题是,它上面有一个UI覆盖,这会阻止默认情况下选择文本.保持叠加层仍然能够选择文本的逻辑方法是使用合成事件(使用document.createEvent),但由于某种原因,它不能按预期工作.

事件似乎被正确委派并触发其处理程序,但未选择任何文本.我在这里有一个例子,这是对问题的粗略简化.

几点说明

  1. 在FF中,如果您在叠加层之外开始选择,您仍然可以选择所需的文本,即使它位于叠加层下方
  2. 当您在未覆盖区域中进行正常选择并单击覆盖图时,可以从委派mousedown事件中删除选择,但不会发生

我错过了一个应该委派的事件(我有mousedown,mousemovemouseup)?或者是浏览器禁用此类行为的某种安全措施(请参阅注释2)?关于如何获得所需结果的任何其他建议?我知道我应该完全解决当前的叠加解决方案,但我已经对问题本身感到好奇.

html javascript javascript-events selection event-delegation

13
推荐指数
1
解决办法
442
查看次数

如何将处理程序绑定到窗口上的选择更改?

基本上我需要知道何时window.getSelection()更改并将处理程序绑定到此事件.想法?

OBS:请注意,我不打算在INPUT或TEXTAREA上绑定选择更改.我正在谈论窗口中的任何选择.

javascript selection dom-events

13
推荐指数
2
解决办法
6460
查看次数

什么是模态选择选择模式?

将my的选择模式设置ListView为multiple时,我遇到了Android API级别11中引入的常量:CHOICE_MODE_MULTIPLE_MODAL.JavaDoc并没有帮助我:

public static final int CHOICE_MODE_MULTIPLE_MODAL

该列表允许在模态选择模式中进行多种选择.

什么是模态选择模式?找不到它.

android listview modal-dialog selection

13
推荐指数
1
解决办法
7302
查看次数

css删除选择/突出显示文本上的文字阴影(mozilla)

我在大多数文本网站范围内使用文本阴影,但是当您突出显示/选择文本时 - 文本看起来很模糊.所以为了删除文本阴影我从这里使用这个css .

::-moz-selection,
::-webkit-selection,
::selection {
    text-shadow: none;
    background: #333;
    color: #fff;
}
Run Code Online (Sandbox Code Playgroud)

问题是,由于某些原因moz-selection,在mozilla(Firefox)中似乎不再起作用(不再?).

这是jsFiddle

css selection css-selectors css3

13
推荐指数
2
解决办法
4万
查看次数

将插入符号位置设置在contenteditable div中的特定位置

在标记重复/下降之前看到

  1. contenteditable div 不会有子元素
  2. 我不想在div末尾设置位置
  3. 不想要跨浏览器解决方案,只需要Chrome支持
  4. 只有vanilla JS,没有库.

我见过很多解决方案.很多人都是Tim Down和其他人.但没有一个可行.我所看到的window.getSelection,.addRange等等,但没有看到他们在这里如何应用.

这是一个jsfiddle.

(试过)代码:

var node = document.querySelector("div");
node.focus();
var caret = 10; // insert caret after the 10th character say
var range = document.createRange();
range.setStart(node, caret);
range.setEnd(node, caret);
var sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
Run Code Online (Sandbox Code Playgroud)

html javascript google-chrome caret selection

13
推荐指数
1
解决办法
2万
查看次数