1
未定义我有一个事件处理程序,在我的AngularJS指令:的JavaScript - AngularJS范围问题:在全球范围内的对象在功能
angular.element($window).on("wheel", onScrollAction);
在我的指令onScrollAction
之前,我已经定义了一些变量,则onScrollAction
功能之外本身,因为我不想让他们分配在每个车轮的事件,因为它们不应该改变。
app.directive('scroll', function ($window) {
return function(scope, element, attrs) {
var elem = angular.element(document.querySelectorAll('.titletitle')).eq(1);
var elemHeight = elem[0].scrollHeight;
//so on until the 5th element
//then object to store all the elements and their heights:
var theObject = [{el:elem,elH:elemHeight},{el:elem2,elH:elem2Height},{el:elem3,elH:elem3Height},{el:elem4,elH:elem4Height},{el:elem5,elH:elem5Height}]
var theActiveElem = theObject[0];
var onScrollAction = function (event) {
console.log(theActiveElem) //renders undefined
console.log(elem) // renders the element
我的问题是,怎么来的elem
是罚款从全球范围去功能范围,当theActiveElem
是不是和我怎么解决它,所以我可以在我的事件处理程序做theActiveElem
行动。
谢谢。
的可能的复制[可变提升](https://stackoverflow.com/questions/3725546/variable-hoisting) – estus