2014-09-12 60 views
0

我有一個JS功能,找到一個新的元素(到ckeditor文本區域),並突出顯示它。效果很好,但是當這種方法被調用兩次時,第一個高光效果停止並且不完成。Jquery .effect停止時調用兩次

我已經嘗試過調用stop(),finish(),但動畫仍然保留在以前的動畫上 我想沒有第一個動畫中斷,併爲它完成它的動畫。 任何意見讚賞。

function highlightContent(element){ 
    var newElement = CKEDITOR.instances.offer_body.document.find(element).$[0]; 
    $('html, body').animate({ 
    scrollTop: $("#cke_offer_body").height() 
    }, 1000); 
    $(newElement).effect("highlight", {color:"#29B8BE"}, 1300); 
}; 

$(document).on("click", '#offer-item', function(){ 
    applyTemplate(this); 
    highlightContent(".template-content"); 
}); 
+0

您是否嘗試過禁用CKEDITOR(並使textarea的只是一個普通的醇」 textarea的),看看是否有可能是某種衝突? – DevlshOne 2014-09-13 09:14:39

+0

我認爲這是在前一個完成之前開始的新動畫的一個例子。由於某些原因,它不排隊下一個動畫 – scott 2014-09-13 17:52:15

回答

0

嘗試停止功能:

$(newElement).stop(true, false); //clearQueue true and jumpToEnd false 

http://api.jquery.com/stop/

+0

它不是我需要停止的newElement的動畫,它的任何以前的元素的動畫 – scott 2014-09-12 22:23:05