Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как не потерять курсор при клике? (https://javascript.ru/forum/misc/49783-kak-ne-poteryat-kursor-pri-klike.html)

qwermjk 28.08.2014 11:19

Как не потерять курсор при клике?
 
Представте, у вас есть input div button
div и button - у нас оформлены в виде кнопок по которым мы кликаем
курсор в inpet-е, кликаем по div курсор пропадает, а если мы кликаем по button то курсор там же и остаётся, как такого добиться в div?
focus() не подходит
нужно чтобы позиция курсора сохранялась, чтобы вставить туда некоторый текст!!!

qwermjk 29.08.2014 08:59

Разве ни кто не знает??

ksa 29.08.2014 09:13

qwermjk, подойдет?
http://javascript.ru/forum/events/26...ovom-pole.html

ksa 29.08.2014 09:21

Или вот...

qwermjk 29.08.2014 10:39

Немного не то, в моём примере не input и не textarea, а div с contenteditable=true ... но суть даже не в этом, а в том как добиться того чтобы курсор не слетал при клике также как когда кликаешь на button ... посмотрите на примере и всё понятно станет!

qwermjk 29.08.2014 10:44

<div id="qwe" contenteditable="true">123123 123213</div>
<div id="qwe2" style="border:1px solid #000; display:inline-block; cursor:pointer">жмяк</div>
<button id="qwe1" style="cursor:pointer">жмяк 2</button>
<script type="text/javascript">
function getCaretPos2(){
        document.getElementById('qwe').focus();
	alert(window.getSelection().getRangeAt(0).startOffset);
}

document.getElementById('qwe1').onclick = function(){
	getCaretPos2();
};
document.getElementById('qwe2').onclick = function(){
	getCaretPos2();
};
</script>


Ну что то типо такого!! Когда ставим курсор в div c контентом, и жмём на button, то он показывает номер символа где был курсор и курсор остаётся на том же месте, а когда кликаем на div, то он показывает номер на который мы в нём кликнули! А нужно чтобы поведение двух кнопок были идентичными!


Часовой пояс GMT +3, время: 06:16.