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

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,难免有些地方写的不够好甚至写错的,还请多多指教!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,323评论 19 139
  • 简介 �迄今为止,�使用HTML+CSS构建出的页面始终缺乏“交互性”,为了能够实现网页和你之间的互动,浏览器引入...
    MarkyLumin阅读 4,751评论 3 1
  • 正在听五月天的,你不是真正的快乐。每次听这首歌,发现我越来越喜欢现场版的了,我也成了个大俗人,追星,追一个很遥远却...
    毛荣荣的巴拉巴拉吧啦废话阅读 1,417评论 1 0
  • 立春已经过去三天了,天气仍然很寒冷。但是,今天早晨,我还是毅然决然地结束了“冬眠”,恢复了往常早起晨练的习惯。 早...
    红尘老街阅读 6,418评论 12 19