2014-12-01 96 views
2

我有一段代碼偵聽複製事件,顯示一些動畫(即:「成功複製!」),然後使文本字段不聚焦。JavaScript - onCopy事件和模糊

$('.textfield').on('copy', function() { 
    doAnimation(); 
    this.blur(); 
}); 

,我快到的問題是,之前的文本複製到剪貼板,以便模糊()調用會導致丟失的文本選擇並沒有什麼複製到剪貼板,此事件被觸發。

無論如何有這個事件觸發後的文本被複制?

+0

嘗試生成文檔上的準備和doanimation模糊代碼。例如$('。textfield')。on('copy',function(){dothis()}); $(document).ready(function(){function dothis(){doAnimation(); this.blur();}}); – 2014-12-01 16:44:59

+0

@AlK爲什麼會有所作爲? – 2014-12-01 16:47:11

回答

1

使用超時應該修復它:

$('.textfield').on('copy', function() { 
    var $_self = $(this); 
    doAnimation();  
    setTimeout(function(){$_self.blur();},0); 
}); 
+0

這工作。如果你正在使用下劃線_.defer()就是這樣。 – 2014-12-06 18:50:19