2015-08-26 9 views
-2

У меня есть текстовые поля. Я хочу изменить свой пограничный цвет на черный при наведении курсора мыши после mousedown. Но когда я ухаживаю и выбираю внешнюю область из клеток, тогда мышь стреляет, не стреляя в мускулатуру.Mouseover уволен без события mousedown

Here is a fiddle of the problem и вот мой JavaScript:

var _mouseDown = false; 

$("input[id^='text']").mousedown(function() { 
    _mouseDown = true; 
}); 
$("input[id^='text']").mousemove(function() { 
    if (_mouseDown) { 
     $(this).css("border-color","black") 
    } 
}); 
$("input[id^='text']").mouseup(function() { 
    _mouseDown = false; 
}); 
+0

Почему вы написали это ур gent? Ничто не является срочным ... – pbenard

+0

Босс это собирается закрыться !!! Mouseover всегда является первым событием, когда вы перемещаете указатель на любой узел DOM. – Jai

+0

попробуйте это http://jsfiddle.net/v4btgen2/3/ –

ответ

0

Reference, this will help you

Попробуйте один

var _mouseDown = false; 
$(document).mousedown(function() { 
    _mouseDown = true; 
}); 
$("input[id^='text']").mousemove(function() { 
    if (_mouseDown) { 
     $(this).css("border-color","black"); 
    } 
}); 
$(document).mouseup(function() { 
    _mouseDown = false; 
}); 

Вот пример JSBin

+0

Спасибо u Naveen, он разрешил мою проблему. я использовал идентификатор ввода в функции мыши вверх, вместо документа, из-за которого ячейки, используемые для выбора, были выбраны как черный цвет границы при наведении курсора мыши без mousedown –