Ich versuche, mehrere Eingabeelemente zu schweben, werden sie eine Klasse auf dem entsprechenden Element umschalten.Hover mehrere Element funktioniert nicht richtig
Das Problem, das ich mit meinem Code habe ist, dass irgendwann ein Element stecken geblieben ist und ich die Maus aus dem Eingabeelement bewegen muss, um die Klasse umzuschalten.
Warum macht es das? Gibt es einen einfachen und sauberen Weg, dies zu tun?
// UPDATE
Auf Chrom funktioniert gut .. Safari ist das Problem.
// address
var addressInput = $('.menu__item input[name="dashAddress"]');
addressInput.hover(function() {
$('.dottedElement').removeClass('dottedElement');
$('.myAddress').addClass('dottedElement');
$('.card-img-div-flip').toggleClass("card-img-div-flip-Active");
});
addressInput.keyup(function() {
var stt = $(this).val();
$(".myAddress").text(stt);
});
// phone
var phoneInput = $('.menu__item input[name="dashPhone"]');
phoneInput.hover(function() {
$('.dottedElement').removeClass('dottedElement');
$('.myPhone').toggleClass('dottedElement');
});
phoneInput.keyup(function() {
var stt = $(this).val();
$(".myPhone").text(stt);
});
// phone
var webInput = $('.menu__item input[name="dashWeb"]');
webInput.hover(function() {
$('.dottedElement').removeClass('dottedElement');
$('.myWeb').toggleClass('dottedElement');
});
webInput.keyup(function() {
var stt = $(this).val();
$(".myWeb").text(stt);
});
// phone
var catInput = $('.menu__item input[name="dashCat"]');
catInput.hover(function() {
$('.dottedElement').removeClass('dottedElement');
$('.myCat').toggleClass('dottedElement');
});
catInput.keyup(function() {
var stt = $(this).val();
$(".myCat").text(stt);
});
.dottedElement {
background: yellow;
border: 1px dotted red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div>
<li class="menu__item">
<input class="menu_input" type="text" name="dashAddress" placeholder="Business Address" />
</li>
<li class="menu__item">
<input class="menu_input" type="text" name="dashPhone" placeholder="Business Phone" />
</li>
<li class="menu__item">
<input class="menu_input" type="text" name="dashWeb" placeholder="Business Web" />
</li>
<li class="menu__item">
<input class="menu_input" type="text" name="dashCat" placeholder="Business Cat" />
</li>
</div>
<div>
</BR></BR>
<a class="myAddress" href="" target="_blank"><span>ADDRESS</span></a>
</BR></BR>
<a class="myPhone" href="" target="_blank"><span>Phone</span></a>
</BR></BR>
<a class="myWeb" href="" target="_blank"><span>Web</span></a>
</BR></BR>
<a class="myCat" href="" target="_blank"><span>Category</span></a>
</div>
'$(). Hover' hat zwei Parameter. Der erste wird ausgelöst, wenn Sie das Element bewegen, der zweite wird ausgelöst, wenn Sie das Element verlassen. Sie können die Klasse mit der ersten Funktion hinzufügen und innerhalb der zweiten Funktion entfernen. –
Der HTML-Code ist ungültig. 'li' MÜSSEN Kinder eines' ul' sein ... –
Überprüfen Sie [dieses Beispiel] (http://jsfiddle.net/njnedyus/1/) mit '.hover' –