Не подключить то, что было выбрано при входе с. Select ()

StackOverflow https://stackoverflow.com/questions/5861312

  •  28-10-2019
  •  | 
  •  

Вопрос

После того, как я использую .select() Чтобы выбрать текст в окне ввода, когда я напорил, я сделал следующее:

HTML:

<input type="text" class="hoverAble" value="hover here"/><br />

jQuery:

$(".hoverAble").mouseenter(function() {

    this.select();

}).mouseleave(function() {

    //I can't figure what to put here.
});

Видеть здесь. Предупреждение о том, чтобы он был правильно функционировать (в JSFIDDLE), вы должны щелкнуть один раз в кадре результата.

Основная идея mouseleave работает как как и ожидалось также.

Как вы могли бы заметить, я не могу найти способ не выбирать текст, когда вы наклоняетесь и избегаете этого:

enter image description here

Это было полезно?

Решение

Другие советы

Если вы используете jQuery, попробуйте использовать Blur ().

$(this).blur();

В этом случае Blur () только не сбит из входного текста, и, хотя он дает внешний вид, текст больше не выбран, он все еще выбирается. Чтобы по -настоящему не подметать любой текст, вы бы сделали:

$(".hoverAble").mouseenter(function() {
    this.select();
}).mouseleave(function() {
    $(this).prop('selectionStart', 0).prop('selectionEnd',0).blur();
});

Это работает:

$(".hoverAble").hover(function() {

    $(this).select();
    $(this).after("<input type='text' style='height:0;width:0;border:0;padding:0;margin:0;' id='tmp_hidden' />");

}, function(){

    $("#tmp_hidden").select().remove();

});

Должен быть лучший способ решить эту проблему.

РЕДАКТИРОВАТЬ: Конечно есть blur().

input.hover(function(){$(this).select();}, function(){$(this).val($(this).val());});

Если вы используете jQuery, вы можете попробовать один из множества плагинов для невыполнения или установления позиции камеры по вашим потребностям, например, Вот этот. Анкет Если вы этого не сделаете, вы все равно можете использовать чистый JavaScript этих плагинов из-за открытых источников

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top