Вы хотите посмотреть на использование чего-то как Enum.GetValues
Сначала подумайте о , почему вы это делаете. Если вы пытаетесь запретить пользователям редактировать определенные элементы, просто установите для contenteditable
значение false для этих элементов.
Однако можно делать то, что вы просите. Приведенный ниже код работает в Safari 4 и вернет узел, к которому привязан выбор (т.е. там, где пользователь начал выбирать , выбор «назад» вернет конец вместо начала) - если вы хотите, чтобы тип элемента в виде строки, просто получите свойство nodeName
возвращенного узла. Это также работает для выборок нулевой длины (т.е. только для позиции курсора).
function getSelectionStart() {
var node = document.getSelection().anchorNode;
return (node.nodeType == 3 ? node.parentNode : node);
}