2015-11-26 75 views
1

實施例時:http://jsfiddle.net/FGuVM/76/邊緣瀏覽器:鼠標離開事件觸發改變選擇值

<div> 
<form> 
    <select class='yearDropdown'> 
     <c:forEach var="years" items="${parkYears}"> 
      <option value="2010">2010</option> 
      <option value="2011">2011</option> 
      <option value="2012">2012</option> 
      <option value="2013">2013</option> 
      <option value="2014">2014</option> 
      <option value="2015">2015</option> 
      <option value="2016">2016</option> 
      <option value="2017">2017</option> 
     </c:forEach> 
    </select> 
</form> 

在Chrome,Firefox和IE選擇從選擇的值時11鼠標離開不會被觸發。

在更改事件之前的Microsoft Edge Edge mouseleave觸發器上。

因爲在值更改之前更改了選擇大小,所以select不起作用。

我如何使選擇工作與其他瀏覽器一樣?

+0

完美地工作。我有什麼問題? –

+0

它不能在邊緣工作 –

回答

1

我可以確認瀏覽器之間的差異。此外,它看起來好像這可能是在EdgeHTML引擎迴歸,如Internet Explorer 11在Windows上類似谷歌Chrome和Mozilla Firefox的in my testing 10功能:

<select size="3"> 
    <option>A</option> 
    <option>B</option> 
    <option>C</option> 
</select> 
with (document.querySelector("select")) { 
    addEventListener("change",  log.bind(this, "change") ); 
    addEventListener("mouseenter", log.bind(this, "mouseenter")); 
    addEventListener("mouseleave", log.bind(this, "mouseleave")); 
} 

function log (eventName) { 
    document.body.appendChild(
     document.createElement("p") 
    ).textContent = eventName; 
} 

我去看看球隊已經有一個提出這個問題;如果我們不這樣做,我會確保它被跟蹤。