29.01.2015, 03:07
|
|
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
Сообщение от DeV1doR
|
так?
|
Так. Только ты смотришь документацию на одноименный метод массива, а не строки
__________________
В личку только с интересными предложениями
|
|
29.01.2015, 03:22
|
|
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
.textContent
Или
.firstChild.data (суть - текст содержится в текстовых узлах. firstChild и будет в данном случае текстовым узлом. Если элемент не содержит текста, то firstChild не существует и будет ошибка, так что такой вариант неудобен - я показал просто что такое есть).
__________________
В личку только с интересными предложениями
|
|
29.01.2015, 03:48
|
Аспирант
|
|
Регистрация: 07.12.2014
Сообщений: 30
|
|
danik.js,
Спасибо.
|
|
29.01.2015, 18:03
|
Аспирант
|
|
Регистрация: 07.12.2014
Сообщений: 30
|
|
Кто подскажет, как добавить число между строки через кнопку? Например, число 12356, бац кликаю мышкой между 3 и 5, жму 4(на кальке) и вуаля 123456. Не додумался, кто сможет написать?
|
|
29.01.2015, 22:33
|
|
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
Сообщение от DeV1doR
|
Не додумался
|
Хреново дело. У тебя же minusOdin() делает почти то, что нужно. Только вместо вырезания символа между начальной и конечной частью строки, нужно наоборот, приплюсовать новый символ.
__________________
В личку только с интересными предложениями
|
|
29.01.2015, 23:06
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,109
|
|
Вставка символа в место отмеченное курсором
Сообщение от DeV1doR
|
Например, число 12356, бац кликаю мышкой между 3 и 5, жму 4(на кальке) и вуаля 123456.
|
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
</head>
<body>
<input id="res" name="" value="12356">
<input id="ok" name="" type="button" value="4">
<script>
document.querySelector("#ok").onclick = function() {
var target = document.querySelector("#res"),
text = target.value,
caretPos = 0;
if (document.selection) {
target.focus();
var sel = document.selection.createRange();
sel.moveStart("character", -target.value.length);
caretPos = sel.text.length
} else if (target.selectionStart || target.selectionStart == "0") caretPos = target.selectionStart;
target.value = text.substr(0, caretPos) + this.value + text.substr(caretPos);
caretPos++
if (target.setSelectionRange) {
target.focus();
target.setSelectionRange(caretPos, caretPos)
} else if (target.createTextRange) {
var range = target.createTextRange();
range.collapse(true);
range.moveEnd("character", caretPos);
range.moveStart("character", caretPos);
range.select()
}
};
</script>
</body>
</html>
Последний раз редактировалось рони, 29.01.2015 в 23:09.
|
|
30.01.2015, 01:45
|
|
Профессор
|
|
Регистрация: 11.09.2010
Сообщений: 8,804
|
|
Это нужно для IE8-. Не думаю что DeV1doR'у нужен кроссбраузерный калькулятор
__________________
В личку только с интересными предложениями
|
|
30.01.2015, 02:24
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,109
|
|
Сообщение от danik.js
|
Это нужно для IE8-.
|
то есть ты предлагаешь оставить так? или другой вариант?
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
</head>
<body>
<input id="res" name="" value="12356">
<input id="ok" name="" type="button" value="4">
<script>
document.querySelector("#ok").onclick = function() {
var target = document.querySelector("#res"),
text = target.value,
caretPos = target.selectionStart;
target.value = text.substr(0, caretPos) + this.value + text.substr(caretPos);
caretPos++;
target.focus();
target.setSelectionRange(caretPos, caretPos)
};
</script>
</body>
</html>
|
|
30.01.2015, 18:39
|
Аспирант
|
|
Регистрация: 07.12.2014
Сообщений: 30
|
|
рони,
спс, теперь надо все это переварить)
danik.js,
хочу понять принцип взаимодействия с мышкой, про кроссбраузерность не думал)
Последний раз редактировалось DeV1doR, 30.01.2015 в 18:43.
|
|
|
|