2014-09-11 47 views
0

我一直在用巨大的彈出窗口,這是一個夢幻般的小腳本。但最近我有一個問題。div懸停後記得懸停在大寫彈出菜單初始化後

我做了關於codepen隔離問題的例子 - 通過改變tophttp://codepen.io/patrickwc/pen/xiajJ

基本上,當你將鼠標懸停在figure元素,figcaption向上移動。然後我做了一個絕對定位在整個figcaption元素上的鏈接,這樣當你點擊或再次點擊時,鏈接放大彈出窗口被激活。這部分工作正常,但由於某種原因,在某些瀏覽器中,當您退出彈出窗口(關閉或單擊外部沒有區別)時,figcaption元素會「卡住」。我希望它回到懸停事件之前的位置,就像在大多數瀏覽器中一樣。但由於某種原因,IE11和Chrome Canary(最新的穩定版Chrome很好)似乎記得該元素被徘徊,並且figcaption框卡在那裏,除非您再次懸停。

您可以在大多數瀏覽器中看到的常見行爲。

IE11和Chrome Canary版(版本39.0.2152.0金絲雀)關閉彈出式視窗後: enter image description here

有趣的是,這並不在browserstack發生。我有Windows 8.1和Chrome Canary 37以及IE11,而且在瀏覽器上行爲不錯,但在我或其他PC上不行。

我知道我應該使用transform來獲得硬件加速轉換,但我需要IE8的支持。我現在要看看轉換是否會有所作爲,但我猜測他們不會。也許我必須使用js而不是懸停事件來移動figcaption元素?

回答

0

所以我從開發人員那裏獲得了一些幫助,他們是我的一位javascript javascript wizz的朋友。一旦彈出窗口關閉,.open-popup-link標籤就會被聚焦。我發現了關於jQuery的blurevent和下面的代碼解決了這個問題,這隻發生在IE11和Chrome Canary(v38和39)中。

jQuery('.open-popup-link').on('focus',function(){ 
    jQuery(this).blur(); 
})