Состояние Firefox не обновляется правильно, когда атрибут href изменяется при наведении курсора - PullRequest
0 голосов
/ 01 ноября 2018

Если атрибут href содержащего якоря обновляется при наведении курсора на вложенные промежутки, как показано в примере ниже, строка состояния firefox не отображает правильный URL-адрес.

$(document).ready(function() {
 	let lastHovered = "" 
	$('span').on('mouseover', function(e) {
  	var href = $(this).data('href')
    if (lastHovered !== href) {
        lastHovered = href
				$(this).closest('a').prop('href', href)
        $('.url-display span').html($(this).closest('a').prop('href'))
    }
  })
})
.span1 {
  background:red;
}
.span2 {
  background:blue;
}
.span3 {
  background:green;
}
span {
  width:20px;
  height:20px;
  display:inline-block;
  margin-right:10px;
}
a {
  text-decoration: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<h2>
Firefox hover test to update href of containing anchor.
</h2>
<a href="#">
  <span class="span1" data-href="http://www.google.com"></span>
  <span class="span2" data-href="http://www.facebook.com"></span>
  <span class="span3" data-href="http://www.twitter.com"></span>
</a>
<div class="url-display">
   Url value:
   <span></span>
</div>

Если вы попробуете приведенный выше фрагмент с помощью Firefox, вы заметите, что строка состояния обновляется только после того, как вы наводите курсор на следующий промежуток времени. Фактический атрибут href содержащего якоря корректно обновляется каждый раз.

Хотелось бы узнать, почему это происходит!

...