欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JavaScript学习笔记4 点击链接打开新窗口

程序员文章站 2022-04-04 23:22:08
...

html部分

    <!-- 两种形式,第一种是直接控制A标签的点击事件触发,第二种是给带某个固定class的A标签添加事件 -->
    <a href="http://www.baidu.com/" onclick="winLink(this); return false">open</a>
    <a href="http://www.baidu.com/" class="open">open</a>

Javascipt部分一

创建一个winlink函数,第一种形式就是直接调用这段JS打开新窗口的。

    function winLink(link){
        window.open(link,"新窗口名称",width=300,heiht=400);
    }

Javascipt部分二

第二种形式的JS,要结合Javascipt部分一一起使用

    //获取页面中的所有A标签
    var links = document.getElementsByTagName("a");
    
    for(var i=0;i<links.length;i++){
    
    //判断A标签的class是否为"open"
        if(links[i].getAttribute("class") == "open"){
        
        //如果是,给这个A标签的onclick绑定一个带语句的函数(这个是我一个文科生的理解,书上没有注明)
            links[i].onclick = function(){
            
                //查找这个A标签内的"href"属性,并把这个值赋值给函数winlink的属性"link"
                winLink(this.getAttribute("href"));return false;
            }
        }
    }

以上js最好放置在body最下方,以免出现JS比HTML先读取完导致获取标签失效

外部JS文件

外部JS文件还可以添加一个函数避免读取顺序上的问题:

    //窗口加载完毕后执行函数prepareLinks
    window.onload = prepareLinks;
    function prepareLinks(){
        ....
        //上面的JS第一部分和第二部分放在这个函数内
    }

没有太多说明,注释已经比较清楚的了,第一次学习javascipt,难免有些地方写的不够好甚至写错的,还请多多指教!