代码之家  ›  专栏  ›  技术社区  ›  Stephan Kristyn

我可以为函数范围之外的文档对象定义别名吗

  •  0
  • Stephan Kristyn  · 技术社区  · 14 年前

    var pic1 = document.getElementById('pic1');
    
    var someFunc = function () {
    
        pic1.style.left = "100px"; 
    }
    
    2 回复  |  直到 14 年前
        1
  •  0
  •   Jason McCreary    14 年前

    对。你只需要确保你在打电话 someFunc 之后 pic1 元素已加载到页上。注意,最好的做法是在结束前将JavaScript放在右下方 body 标签。

    查看您的代码- http://jsfiddle.net/dga9k/1/

        2
  •  1
  •   Guffa    14 年前

    这不是范围问题。可能的原因是您试图在创建元素之前获取对该元素的引用。必须等到元素加载后才能访问它,例如使用onload事件:

    <html>
    <head
    <title>Test</title>
    <script>
    
    function init() {
    
      var pic1 = document.getElementById('pic1');
    
      var someFunc = function () {
        pic1.style.left = "100px"; 
      };
    
      someFunc();
    
    }
    
    </script>
    </head>
    <body onload="init();">
    <div id="pic1"></div>
    </body>
    </html>