2013-08-18 73 views
0

我有非常簡單的代碼如下這是Chrome和Safari的bug

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title></title><style>span {display:none;} </style> 
</head> 
<body> 

    <p><input type="text" id="a"/> <span>focus fire</span></p> 

<p><input type="password" /> <span>focus fire</span></p> 


    <script src="http://code.jquery.com/jquery-1.9.1.js"></script> 


<script> 

    $("input").focus(function() { 

     $(this).next("span").css('display', 'inline').fadeOut(1000); 
     alert("he"); 
    }); 

    $(function() { 
     $("#a").focus(); 
    }); 
</script> 

</body> 
</html> 

在Chrome和Safari,警報不斷射擊,相比IE,FF,歌劇,他們只火一次。有人可以解釋這個嗎?

回答

0

這是因爲在警報解除後Chrome和Safari重新關注元素,導致另一個警報觸發,等等。其他瀏覽器在警報解除後並不關注任何事情,這就是爲什麼它不會無休止地開火。