var SendButt = document.getElementById("sendbutt");
SendButt.onmouseover = function(e) {
console.log('мышка пришла');
SendButt.disabled = true;
};
SendButt.onmouseout = function(e) {
console.log('мышка ушла');
SendButt.disabled = false;
}
<input id="ni" type="number" name="num" value=""><br>
<button id="sendbutt" type="submit">Отправить</button>
Первое событие срабатывает, второе onmouseout уже нет... Потому что кнопку отключили? Или косяк в другом?
Если верить стандартам, то такое поведение не должно быть. В спецификациях указано, что должен работать и disable отключает только click события. В любом случае всегда есть альтернативы.
var SendButt = document.getElementById("sendbutt");
document.onmousemove = function(e){
if(e.target == SendButt)
SendButt.disabled = true;
else
SendButt.disabled = false;
}
<input id="ni" type="number" name="num" value=""><br>
<button id="sendbutt" type="submit">Отправить</button>
В хроме всё глобальный объект, не знаю какие там спецификации браузера но вот так работает через дополнительный div c addEventListener
var Cover = document.getElementById("my");
var SendButt = document.getElementById("sendbutt");
Cover.addEventListener("mouseover", function(e) {
console.log('мышка пришла');
SendButt.disabled = true;
});
Cover.addEventListener("mouseout", function(e) {
console.log('мышка ушла');
SendButt.disabled = false;
});
#my{
border: 1px solid black;
}
<input id="ni" type="number" name="num" value=""><br>
<div id="my">
<button id="sendbutt" type="submit">Отправить</button>
</div>
Продвижение своими сайтами как стратегия роста и независимости