Мне нужно, чтобы по клику текст копировался, но не выделялся. Не могу понять какой метод отвечает за выделение. Нагуглил, что selectNodeContents()
выделяет текст, но это не срабатывает. Может кто то сможет подсказать ?
$(document).ready(function () {
function selectText(elementId) {
var doc = document,
text = doc.getElementById(elementId),
range,
selection;
if (doc.body.createTextRange) {
range = document.body.createTextRange();
range.moveToElementText(text);
range.select();
} else if (window.getSelection) {
selection = window.getSelection();
range = document.createRange();
range.selectNodeContents(text);
selection.removeAllRanges();
selection.addRange(range);
}
}
$("#linkCopy").click(function() {
selectText(this.id);
document.execCommand("copy");
$('.link__url-icon').css("display", "block");
});
});
.link__url {
display: flex;
}
.link__url-icon {
display: none;
margin-left: 15px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span class="link__url" id="linkCopy">https://www.google.com.ua/?hl=ru<span class="link__url-icon"><img src="./images/copy.svg"></span></span>
За выбирание отвечает объект selection
, и выделяется текст после того, как ты добавил range
.
Чтобы сбросить выделение достаточно просто удалить все выбранные интервалы, после того, как выполнится функция document.execCommand("copy");
. Для этого можно вернуть объект selection
из функции и очистить его непосредственно после вызова, например:
$(document).ready(function() {
function selectText(elementId) {
var doc = document,
text = doc.getElementById(elementId),
range,
selection;
if (window.getSelection) {
selection = window.getSelection();
range = document.createRange();
range.selectNodeContents(text);
selection.removeAllRanges();
selection.addRange(range);
return selection;
}
}
$("#linkCopy").click(function() {
var s = selectText(this.id);
document.execCommand("copy");
s.removeAllRanges();
$('.link__url-icon').css("display", "block");
});
});
.link__url {
display: flex;
}
.link__url-icon {
display: none;
margin-left: 15px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span class="link__url" id="linkCopy">https://www.googwwwle.com.ua/?hl=ru<span class="link__url-icon"><img src="./images/copy.svg"></span></span>
У меня есть БД, в ней есть таблица запись, в самой таблице, есть колонка "Время" Как мне сделать, чтобы нельзя было добавить одитнаковое времяЯ...
Подскажите пожалуйста, что я делаю не правильноПробую сохранять в xml файле получается, но обратно в таблицу загрузка не происходит, подскажите...
Есть много таблиц в одной модели, созданной при помощи Code FirstС каждой из них нужно проделать одинаковые операции