好吧,我在我束手無策。這裏是我的代碼,或者至少是我認爲導致問題/與我的問題相關的部分。JQuery的動畫元素爲不運行動態改變
//clicking back contacts scenario
$("#feat-back-arrow").live("click", function() {
contractFeature();
});
//undo expand function for feature
//
//
function contractFeature() {
$(feat_expanded_div).removeClass("expanded-feat");
//actual slow animation
var d = {};
var speed = 400;
d.width = feat_orig_width;
d.height = feat_orig_height;
d.left = feat_offset_left;
d.top = feat_offset_top;
d.marginRight = "0px"
$(feat_expanded_div).animate(d, speed);
showFeatures();
returnFeatureHeader(feat_expanded_div);
ExpandFeature = false;
}
我動態生成一個名爲#feat-back-arrow
,單擊時按鈕,呼叫contractFeature()
,並在特定的,運行的動畫事件。此事件不適用於feat_expanded_div
(我將其定義爲全局變量等,並將其用於contractFeature()
中的其他函數中)。完全沒有任何反應。現在
,如果我改變了我的代碼到這個部分:
var d = {};
var speed = 400;
d.width = feat_orig_width;
d.height = feat_orig_height;
d.left = feat_offset_left;
d.top = feat_offset_top;
d.marginRight = "0px"
$("div").animate(d, speed);
改變它,所以它只是所有div運行時,它工作正常。我知道問題不在於定義feat_expanded_div
,因爲正如我所說的,函數returnFeatureHeader()
將它作爲參數進行處理就好了。
我認爲這與.live
事件有一個動畫事件有關,但從字面上看,現在的任何洞察都會非常有幫助。 =)
感謝
你試過包裝'feat_expanded_div'引號只是爲了看看會發生什麼? – 2012-07-06 18:49:53
feat_expanded_div是一個變量,但我可以嘗試,它被定義爲 變種feat_expanded_div = $(「blahblah元件」); – 2012-07-06 18:52:08
將其放置在「」產生同樣的效果不存在=( – 2012-07-06 18:53:22