2016-09-01 2 views
0

Я ищу способ захвата определенного символа (или символьного индекса в тексте) после того, как пользователь нажимает на него внутри div contenteditable. Просто чтобы дать пример, пожалуйста, рассмотрим следующий HTML:Как захватить определенный символ, который был нажат внутри содержимого, связанного с контентом.

<div contenteditable="true"> 
    Hello world 
</div> 

Предположим, пользователь щелкает прямо между «о» и «г», есть ли способ узнать, что, используя JavaScript?

Я бы предположил, что это будет покрыто Selection API, но все мои донесения до сих пор ничего мне не дали.

Я ценю любую помощь, которую вы можете мне дать.

ответ

1

Вы всегда можете сделать что-то подобное. Codepen Link

Я поставил предупреждение, чтобы вы могли видеть, что он действительно знает, что вы нажали, и если вы нажмете пробел между словами «Привет и мир», он также знает.

var div = document.getElementById("div"); 

функция clickify (е) { вар обр = (TypeOf e.innerText! == 'не определено')? e.innerText.split (""): e.textContent.split (""), max = arr.length, i = 0, template = "$ c", result = "";

for (; i < max; i += 1) { 
    result += template.replace("$c", arr[i]); 
} 

e.innerHTML = result; 

} 

clickify(div); 

 Смежные вопросы

  • Нет связанных вопросов^_^