如何将动态值传递给Jquery中的其他插件选项(从accordion到localscroll)

如何将动态值传递给Jquery中的其他插件选项(从accordion到localscroll),jquery,scroll,accordion,Jquery,Scroll,Accordion,这是我的设置。 在我的页面上有两列。在左栏中我有一个手风琴,下面我有一些文本,里面有链接。在右栏中,我有一些图片,这些图片由左栏文本中的链接控制。这些图片可以滚动 在我的页面上,我有一个手风琴,它可以很好地工作,并且是这样设置的 $( "#accordion" ).accordion({ autoHeight: false, navigation: true, change: function(event, ui) { dynamicOffsetValue(); }/*T

这是我的设置。 在我的页面上有两列。在左栏中我有一个手风琴,下面我有一些文本,里面有链接。在右栏中,我有一些图片,这些图片由左栏文本中的链接控制。这些图片可以滚动

在我的页面上,我有一个手风琴,它可以很好地工作,并且是这样设置的

$( "#accordion" ).accordion({
    autoHeight: false,
    navigation: true,
    change: function(event, ui) { dynamicOffsetValue(); }/*This here call's the dynamicOffsetValue function after the accordion has finished animation*/
});
然后我有一个函数,它给我一个环绕accoridon的div的高度

function dynamicOffsetValue()
{
    var top = $("#accordion").height();/*IF I ALERT THIS THEN IT GIVES ME THE NUMBER I NEED*/
}

dynamicOffsetValue();
然后,我还为右栏中的图像设置了一个localscroll插件

  var scrollOptions = {
      target:div#overflow, /* the element that has the overflow and contains images*/
      offset:500,/*HOW TO I MAKE THIS EQUAL TO dynamicOffsetValue ???*/
      axis: 'xy',
      duration: 50,  
      easing: 'swing'
    };

$('.scrollContainer').localScroll(scrollOptions);/*.scrollContainer(this element wraps both left and right column) */
现在,当页面加载,第一个手风琴打开,用户点击文本中的链接时,图像就会滚动到我想要的地方。但当手风琴以不同的状态打开时,偏移值500是不够的

我该如何做才能让当用户点击手风琴时,dynamicOffsetvalue被发送到scrollOptions,然后当用户点击文本内的链接时(触发localscroll),新的偏移量值被读取


希望所有这些都有意义。:)

你为什么不在链接中使用锚(
href=“#my_id”
)并将这些id添加到你想要的图像中,而不是设置偏移量?

与往常一样,在发布这个问题后一点时间,我就找到了答案。(我已经在这两天里胡闹了)

这是我最后的设置。 我想我的问题是文本中的链接只有在页面加载时才被分配到localscroll,因此忽略了对scrollOptions的任何更新。但现在我已经将所有localscroll设置移到了dynamicOffset函数中,每次单击手风琴部分时,它(localscroll)都会被重新分配,然后它(localscroll)读取新更新的偏移值

    $( "#accordion" ).accordion({
        autoHeight: false,
        navigation: true,
        change: function(event, ui) { dynamicOffsetValue(); }/*This here call's the dynamicOffsetValue function after the accordion has finished animation*/
    });


    function dynamicOffsetValue()
    {
        var top = $("#accordion").height();/*IF I ALERT THIS THEN IT GIVES ME THE NUMBER I NEED*/

          var scrollOptions = {
          target:'div#overflow', /* the element that has the overflow and contains images*/
          offset:top,/*THIS NOW EQUALS TOP*/
          axis: 'xy',
          duration: 50,  
          easing: 'swing'
        };

    $('.scrollContainer').localScroll(scrollOptions);/*.scrollContainer(this element wraps both left and right column) */

    }

    dynamicOffsetValue();