2012-05-10 34 views
0

我無法找出這一個出來,任何人都可以幫忙嗎?刷新/重置jquery變量後ajax表發送

我不知道,如果它甚至有可能,我需要刷新/重置變量作爲我需要保持它的其他功能範圍,因此它可以在全球使用。

我靠近我的jQuery的善良的上這個變量...

var heightOne = $panelOne.height(); 

,我想,當我的AJAX重力形式發送給刷新。

我有這個綁定功能,將火的時候,形式已經溢滿重新加載,所以我想我可以把我的變量刷新/復位內這裏腳本...

$(document).bind('gform_post_render', function(){ 

    // variable refresh code in here...  

    $slidePane.css({ 'height' : heightOne + 'px' }); // then this will follow and use new height taken from $panelOne updated variable 

}); 


但我正在努力尋找從哪裏開始。任何幫助將是非常感謝。



UPDATE

這是我的完整劇本,告訴你什麼是我想要達到的。

$(window).load(function(){ 

    var $slidePane = $("#sliding-pane"), 

     $stageOne = $("#nav-stage-1"), 
     $stageTwo = $("#nav-stage-2"), 
     $stageThree = $("#nav-stage-3"), 

     heightOne = $("#panel-stage-1").height(), 
     heightTwo = $("#panel-stage-2").height(), 
     heightThree = $("#panel-stage-3").height(); 

    $slidePane.css({ 'height' : heightOne + 'px' }); 

    $.fn.slideThree = function() { 

     $slidePane.stop().animate({ 
       left : "0px", 
       height : heightOne + 'px' 
     }, 300); 

     FB.Canvas.scrollTo(0, 510); 

    }; 

    $.fn.slideThree = function() { 

     $slidePane.stop().animate({ 
       left : "-680px", 
       height : heightTwo + 'px' 
     }, 300); 

     FB.Canvas.scrollTo(0, 510); 

    }; 

    $.fn.slideThree = function() { 

     $slidePane.stop().animate({ 
       left : "-1360px", 
       height : heightThree + 'px' 
     }, 300); 

     FB.Canvas.scrollTo(0, 510); 

    }; 

    $stageOne.on('click', function() { 

     $(this).slideOne(); 

    }); 

    $stageTwo.on('click', function() { 

     $(this).slideTwo(); 

    }); 

    $stageThree.on('click', function() { 

     $(this).slideThree(); 

    }); 

    $(document).bind('gform_post_render', function(){ 

     $slidePane.css({ 'height' : heightThree + 'px' }); 

    }); 

}); 

回答

0

我建議你把overflow:hidden放在slidePane的css中;這種方式會自動調整尺寸。你不應該需要jQuery這個。

+0

這將是一個理想的解決方案,但是這個div是作爲幻燈片放在傳送帶上運行的 - 並且需要一個確定的高度。謝謝 – Joshc

+0

如果你真的想要jQuery,那麼$ slidePane.css('height',heightOne);應該工作,只要您在回調中設置了您需要的高度的變量。另外,確保$ slidePane在範圍內。很難看到發生了什麼事,因爲你沒有多大的表現。 – frenchie

+0

我認爲你需要了解溢出如何工作;如果你的HTML/CSS好,你不應該指定高度。 – frenchie

0
var $slidePane = $("#sliding-pane"), 
    /* ...other vars... */ 
    heightThree = $("#panel-stage-3").height(); 

    // Cache the height 
    $('#panel-stage-3').data('origHeight', heightThree); 


$(document).bind('gform_post_render', function(){ 
    $slidePane.css({ 'height' : $('#panel-stage-3').data('origHeight') + 'px' }); 
}); 
+0

嗯無論如何用這與我的綁定函數我在wordpress重力形式上使用它?謝謝 – Joshc

+0

你好,我已經添加了我的完整腳本,以便你可以看到發生了什麼。綁定的gform_post_render函數觸發時,變量'heightThree'的值仍然與原始文檔加載的原始值相同。我需要這個變量以某種方式更新值。 – Joshc

+0

根據你新提供的代碼,我建議一個簡單的數據緩存和引用。看我的編輯。 – AlienWebguy