我有一个javascript函数,是调入一个对象然后再执行操作的,想不放在函数里面,而直接运行,就是不行,没有任何反应呢.请问哪些一定要用到onload?如果不想放在一个函数里面,该怎么做?

解决方案 »

  1.   

    如果不能确定在js中所调用的DOM对象在其执行时是否已经被浏览器加载,则用onload可确保执行时所用对象已被加载
    直接运行是指边加载边运行,可直接放在<script>中,但要保证所用的DOM对象在<script>之前出现.
      

  2.   

    简单点做加个defer
    <script language=javascript defer>
    除了上面的
    只要等要执行的对象先加载完了之后就可以了
      

  3.   

    <script type="text/javascript" src="http://www.google.com/jsapi?key=ABQIAAAAyoaEk60zrBFsbWsw6pWWKRSHiPjiwG4N1gYGgDoZru3xEpSrJxSEYJMZqwAh_kl_hVA50egJk6WPeQ"></script><script type="text/javascript">
     google.load("maps", "2.x");
      function initialize()
      {  
       var map = new google.maps.Map2(document.getElementById("mapddd")); 
       map.setCenter(new google.maps.LatLng(22.54426932077957,113.99826049804687), 12, G_SATELLITE_MAP);
       map.addControl(new GSmallZoomControl());
       map.enableContinuousZoom();
      }
     google.setOnLoadCallback(initialize);
    </script>
    不在body里用onload,象上面这样也行.但我想不包在一个函数里面,怎么办?