Javascript 输入文本区域选择与鼠标向下事件冲突
我遇到了一个奇怪的问题,我有一些元素,比如classJavascript 输入文本区域选择与鼠标向下事件冲突,javascript,jquery,Javascript,Jquery,我遇到了一个奇怪的问题,我有一些元素,比如class.element,其中一些是包含文本的div,当双击ContentEditable时,属性变为true,用户可以编辑文本,并且一个名为disabled的类被添加到正在编辑的元素中。原因是.element也附加了mousedown事件,我不希望在编辑元素时触发该事件,因为用户可能希望选择文本或重新定位插入符号。为此,我在mousedown事件中添加了类似的内容: if(element.hasClass("disabled")) return fa
.element
,其中一些是包含文本的div,当双击ContentEditable
时,属性变为true,用户可以编辑文本,并且一个名为disabled
的类被添加到正在编辑的元素中。原因是.element
也附加了mousedown事件,我不希望在编辑元素时触发该事件,因为用户可能希望选择文本或重新定位插入符号。为此,我在mousedown事件中添加了类似的内容:
if(element.hasClass("disabled")) return false;
这是行不通的,但如果我去掉mousedown事件,改用“click”事件,它会很好地工作。我该怎么办
编辑:下面是一个例子" ... 如果您注意到双击每个元素时,它们将变为可编辑的,但是您无法在元素中选择或重新定位插入符号,因此编辑该元素非常困难,但是如果将鼠标悬停改为单击,问题就解决了 您有一个
返回false在mousedown
事件中的code>,这是阻止用户选择文本或移动插入符号的原因。我认为没有理由让返回false代码>因为您要做的就是阻止代码在执行之后执行,这可以通过返回
任何内容来实现
因此,即使这样也足以:
if(element.hasClass("disabled")) return;
在问题被复制的地方进行演示,可以更容易地帮助确保@amancheval我会继续it@AmaanCheval好的,那么你到底想做什么呢?您想禁止在编辑文本时选择文本或用鼠标移动插入符号吗?我不明白为什么在mousedown
事件中出现return false
。您希望何时禁用选择文本?