关于html:IE中无法选择的文本

Text unselectable in IE

我需要页面上的一个HTML元素(标签)对于IE无法选择...目前我已经尝试过

  • Unselectable=on
  • onselectreturn=false;
  • 没有一个可以帮助我。

    对于Firefox和Chrome,我设置了以下CSS属性,它们绝对可以正常工作……但是与IE一样,问题仍然存在。

    您设置的CSS属性:

    1
    2
    3
    4
    5
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
    user-select: none;

    有没有其他选择或IE骇客?

    关于Stack Overflow的答案帮助了我,但对IE却没有帮助。


    应该适用于HTML中的IE。如果从javascript应用,则必须使用setAttribute:labelEl.setAttribute("unselectable","on")labelEl.unselectable ="on"不起作用(在IE9中测试)。

    请注意," unselectable"属性仅会直接影响元素内部的文本,而不会影响其子元素内的文本-如果您要这样做,还需要在其子元素上设置unselectable。


    在IE8中,有两种方法可以使元素不可选择:

    1.)myElement.unselectable ="on"; // Does not work on body elements

    2.)myElement.onselectstart = function (){ return false; }

    一旦无法选择元素,用户将无法从该元素中进行选择。
    但是,他们仍然可以选择元素的文本或框
    通过将其从另一个不可选择的元素中拖入其中。

    我试图通过取消myElement上的各种事件来解决此问题(ondragenter,oncontrolselect,onmouseenter,onselectionchange ...),但该方法不起作用。

    所有这些仅适用于IE8


    unselectable设置为off,它应该可以工作。

    1
    <label unselectable="off">Something</label>

    http://jsfiddle.net/sWguE/1/

    这对我也有用

    1
    <label onselect="return false">Something</label>

    http://jsfiddle.net/sWguE/3/