【问题标题】:Losing selection when clicking checkbox label单击复选框标签时丢失选择
【发布时间】:2011-06-17 18:42:37
【问题描述】:

我正在尝试获取一个带有标签的复选框,以便当您在可编辑的div 中选择文本时,单击label 不会丢失来自div 的选择。标签仍然需要在单击时应用标准复选框勾选/取消勾选,但将焦点和选择保持在div上。

div 上执行简单的focus() 将无济于事,因为选择将消失(并且插入符号位于开头)。我当然可以研究一种方法来存储selection 对象并尝试在单击label 后将其分配回来,但是没有更简单的方法来保留selection 吗?

(我需要使用 labelcheckbox 执行此操作的原因是因为我将使用 jQuery UI 按钮,并且需要它们的切换功能)

类似的说明,如果你点击复选框,你通常仍然会在div中保留选择,但至少在FF4上,如果你非常频繁地点击复选框( 在下面回答

示例:http://jsfiddle.net/niklasvh/gULM9/

【问题讨论】:

    标签: javascript checkbox selection contenteditable


    【解决方案1】:

    It's a Firefox bug marked 490367.

    根据bug描述,当页面上有contenteditable div时,双击input字段会出现异常。

    我在尝试手动复制时注意到了奇怪的行为,所以我猜这是一个错误。我不知道任何解决方法。

    【讨论】:

    • 这只能解释问题的第二部分,关于标签点击仍然是一个悬而未决的问题。
    • 如果单击复选框本身,则突出显示/选择保留,但如果单击标签(或另一个 DIV)则丢失。这也是你看到的行为吗?
    • @Tim 是的,单击复选框可以正常工作,但单击标签不能。使用我的问题中提到的选择当然是一种选择,但我真的更愿意在选择这条路线之前探索任何其他可用的选择。
    • 作为一种解决方法,您使用 并保留选择。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-29
    • 2012-12-13
    相关资源
    最近更新 更多