我如何实现它?
我有一个名为“tooltip”的模块,它具有“淡入淡出”功能,而该功能又使用全局“元素”变量。该变量是对DOM元素的引用。我想从另一个名为“lightbox”的模块更新它,所以我可以让“淡入淡出”功能处理淡入效果。我的所有模块都是使用闭包声明的。
var tooltip = function{
var element;
return{
fade: function(){ fade code goes here...}
};
}();
我可以执行以下操作来更新灯箱模块中的“元素”吗?
tooltip.element = document.getElementByID('lightbox-con');
没有jQuery代码请...
答案 0 :(得分:1)
如果使用模块表示 object ,那么您可以这样做:
var tooltip = {
element: null,
fade: function() {
//fade code goes here...
// you can access the element via this.element
}
}
然后您可以按照描述更新元素:
tooltip.element = document.getElementByID('lightbox-con');
但如果element
仅用于fade
函数,您还可以考虑将元素传递给该函数:
var tooltip = {
fade: function(element) {
//fade code goes here...
}
}
并且做:
tooltip.fade(document.getElementByID('lightbox-con'));
这取决于你真正想做的事情。