Javascript 如何检测一个";拖拽;在输入中?
我有一个如下所示的输入字段:Javascript 如何检测一个";拖拽;在输入中?,javascript,jquery,html,javascript-events,Javascript,Jquery,Html,Javascript Events,我有一个如下所示的输入字段: <input id="test" value="abdefg" /> 我想要一个jQuery事件来检测我是否在输入字段中拖动文本。我的意思是,你首先选择ab,然后拖动它,这样它就会在g之后结束 有可能检测到这样的东西吗?我不知道拖动文本时会触发任何特定事件。但应该可以只在mousedown上保存字段的值,然后在触发mouseup事件时将其与字段的新值进行比较。如果值已更改,则会拖动某些内容 还是我在这里遗漏了什么?没有专门用于此目的的事件,但此操作
<input id="test" value="abdefg" />
我想要一个jQuery事件来检测我是否在输入字段中拖动文本。我的意思是,你首先选择ab,然后拖动它,这样它就会在g之后结束
有可能检测到这样的东西吗?我不知道拖动文本时会触发任何特定事件。但应该可以只在mousedown上保存字段的值,然后在触发mouseup事件时将其与字段的新值进行比较。如果值已更改,则会拖动某些内容
还是我在这里遗漏了什么?没有专门用于此目的的事件,但此操作将被
oninput
事件捕获
例如:
请注意,
oninput
不受IE8及更低版本的支持,但可以使用onpropertychange
事件对其进行模拟。我有一个插件,用于规范所有主要浏览器的此事件-。Hm。。。我将试着编写一个JSFIDLE示例,看看它是否有效。我也只是在胡乱摆弄,无法让它工作。拖拽文本时,mouseup事件似乎不是事件触发的。但是,如果你将这个想法与其他答案中提出的输入元素结合起来,它似乎是有效的:(在最新的Chrome和Firefox中测试)好的,最后一个更新,因为我的上一个提琴在按下鼠标按钮时也会触发:@Simon,很好!看起来很有效,我还在做一些测试:DLooks就像一个两步的过程:1。检测文本的选择。2.检测拖动开始/结束事件。复杂的键盘选择和可能的拖动选项(只需鼠标,或允许键盘与箭头键组合)。好问题,尽管+1that@Tim:哈哈:-)很高兴看到其他人为了改变而鼓吹oninput事件!不是真的为我做了什么。@Kees:你说“不是真的为我做了什么”是什么意思?您使用了哪个浏览器来测试它。拖动示例中的文本时,它应使用文本字段的新值的副本更新其后的元素。或者你的意思是它不能让你的果汁继续,因为我知道附近有一个地方,他们可以用那种东西来解决你。。。啊哼!我正在使用IE,当我拖动某个东西时,没有任何东西得到更新。我对喝果汁不太感兴趣;-)@Kees:我没有包括IE的兼容性代码-我现在已经更新了这个示例。我建议使用我链接到的插件,这样输入更改只触发一个事件处理程序,冒泡的工作方式也一样。