我无法解决这个问题,有人可以帮忙吗?
我不确定它是否可能,我需要刷新/重置变量,因为我需要保留其他功能的范围,因此可以全局使用。
我的这个变量靠近我的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
});
但我很难找到从哪里开始。任何帮助都会非常棒。
更新
这是我的完整脚本,向您展示我正在尝试实现的目标。
$(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 :(得分:0)
我建议你将overflow:hidden
放在slidePane的css中;这样,尺寸将自动调整大小。你不应该为此需要jquery。
答案 1 :(得分: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' });
});