Показать сообщение отдельно
  #4 (permalink)  
Старый 16.11.2019, 13:39
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Не проще ли в таком случае очищать кнопкой? Следите за кареткой, вставили, выбрали очистить, значит опять установили каретку.
А можно и без этого, но тут с гибкостью не очень:

<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<style>
input {
  padding: 5px 5px 5px 38px;
}
input + label:after {
  content: attr(data-path);
  position: absolute;
  top: 13px;
  left: 15px;
  color: #555;
}
</style>

<input id="domain" autocomplete="off" /> <label for="domain" data-path="path/"></label>

<a href="#" data-href="domain.as/path/" target="_blank"></a>

<script>

var d = "path/", field = document.querySelector('input');

field.addEventListener("keypress", function(e) {
    e.preventDefault()
});

field.addEventListener("paste", function(e) {
    this.value = ''
});

field.addEventListener("input", function() {
    var a = document.querySelector('a');
    a.href = a.dataset.href + this.value;
    a.textContent = d + this.value;
});
</script>
</body>
</html>

Последний раз редактировалось laimas, 16.11.2019 в 13:45.
Ответить с цитированием