Это сработает, только если вы для элемента запретите выделение.
Для этого в каждом браузере будет свой подход, согласно CSS3 можно использовать user-select: none (element.style.userSelect = "none"), но это будет работать только в браузерах, поддерживающих CCS3.
В IE и старых Opera браузерах можно использовать аттрибут (не стиль) элемента unselectable="on". В браузерах mozilla можно использовать css-свойство -moz-user-select: none (mozUserSelect через JS) и -webkit-user-select: none (webkitUserSelect через JS).
Таким образом полное выключение выделения внутри элемента будет выглядеть так:
.unselectable { -moz-user-select: none; -webkit-user-select: none; user-select: none; }
<div unselectable="on" class="unselectable">This content cannot be selected by mouse or keyboard.</div>
Однако следует обратить внимание, что реализация unselectable отличается от CCS3 user-select: none; тем, что выбрать unselectable элемент все равно можно, если "начать" выделение вне самого элемента. В случае CSS3 свойства выделить элемент нельзя будет и таким способом.
Но если вы уберете возможность выделения, то сможете подавить встроенный функционал браузера, согласно которому курсор меняется на "text" и поставить свой.