在这种情况下如何使变量全局可访问?

时间:2016-04-18 20:23:39

标签: javascript variables scope greensock

CODEPEN示例 http://codepen.io/dada78/pen/b50de869b75b32e220956bb36052733b

我试图找出如何使我的highlightSelection函数中使用的selectedId变量在我的函数中可以访问" fadeOutUnselected(notThisId)"在码本的第40行?

function fadeOutUnselected(notThisId) {
var tl = new TimelineMax();

tl.to(".options:not([id=" + notThisId +"]), input[type='radio']", 0.5, {autoAlpha:0}, "getSlidesReady+=4") //fade out all options but the selected one  
//.to("#"+ selectedId, 0.5, {y:0}) //animate selectedId option up
  .set(".options:not([id=" + notThisId +"]), input[type='radio']", {y:0})
return tl;
}

任何帮助表示赞赏。我想要做的就是为用户选择的选项(" selectedId"变量)设置动画,直到位置y:0。

谢谢!

1 个答案:

答案 0 :(得分:1)

您应该执行类似

的操作
var globalSelectedId;

function highlightSelection(label) {
    // same code 
    globalSelectedId = selectedId;
}

function fadeOutUnselected(notThisId) {
    // same code, you can acces globalSelectedID
}