zoukankan      html  css  js  c++  java
  • 【DOM编程艺术】继续弹出窗口(二)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>弹出窗口</title>
    </head>
    
    <body>
    <a href="http://www.example.com/" class="popup">弹出窗口</a>
    <script type="text/javascript">
    window.onload=prepareLinks;
    function prepareLinks(){
         var links=document.getElementsByTagName('a');
         for(var i=0;i<links.length;i++){
            if(links[i].className=="popup"){  //links[i].getAttribute('class') 貌似ie6不支持
                links[i].onclick=function(){
                    popup(this.href);
                    return false;
                }
            }
         }
    }
     function popup(whichUrl){
         window.open(whichUrl,'popup','width=360,height=480');
     }
    </script>
    </body>
    </html>

    讲解:

    var links=document.getElementsByTagName('a');

           这条语句将在javascript文件被加载时立刻执行。如果javascript文件是从HTML文档的<head>部分用<script>标签调用的,它将在html文档之前加载到浏览器里。同样,如果<script>标签位于文档底部</body>之前,就不能保证哪个文件最先结束加载。(浏览器可能一次加载多个)。因为脚本加载时文档可能不完整,所以模型也不完整。没有完整的Dom,getElementsByTagName等方法就不能正常工作。

         必须让这些代码在Html文档全部加载到浏览器之后马上开始执行。还好,html文档全部加载完毕时会触发一个时间。

         文档被加载到一个浏览器窗口里,document对象又是window对象的一个属性。当window对象触发onload事件时,document对象已经存在。

    window.onload=function(){}

  • 相关阅读:
    opensuse tumbleweed中安装code
    树莓派中将caplock映射为esc键
    记录一次奇怪但是很有意义的程序编译警告
    新树莓派系统安装ROS记录
    程序的深挖
    intle官方手册下载
    slax linux的定制
    angular4 *ngFor获取index
    axios post传参后台无法接收问题
    AMD、CMD、CommonJs和 ES6对比
  • 原文地址:https://www.cnblogs.com/positive/p/3660452.html
Copyright © 2011-2022 走看看