zoukankan      html  css  js  c++  java
  • 发发关于JavaScript的感慨,随手记几个js知识碎片

    最近一段时间写了很多JavaScript和jquery代码,越来越感觉js基础不牢固,写一句查半天,有时间肯定要系统的学一下。

    不说了,先记一下最近学到的点东西,省的以后没时间系统学js还要再来查。

    一,在js方法中获取触发方法的事件以及触发事件的元素对象:

    A、获取事件对象比较简单:

    var e = window.event;

    但是需要注意的是:通过a标签的href是不能触发事件的:

    //写了一个js方法:
    function getEvent(){
      console.log(window.event);//在谷歌控制台打印
    }
    //两个a标签以不同形式触发该方法:
    <a href="javascript:getEvent();" >标签一</a>
    <a href="javascript:void(0);"  onclick="getEvent()" >标签二</a>
     
    //最后标签一打印的是undefined,标签二却可以正常获取window.event对象

    B、获取了事件就可以获取触发事件的元素了

    var currentElement =window.event.srcElement || window.event.target;

    这获取的是一个原生的JavaScript元素对象,可以用$(currentElement)来获取对应的jquery对象,这样就能用jquery的方法了。

    二、判断一个对象是否为undefined(typeof的用法)

    var url;
    if(url==''||url==null||typeof(url)=="undefined"){
    }

    核心就是:typeof(url)=="undefined"

    在js中,typeof 可以用来检测给定变量的数据类型,可能的返回值:

    1. 'undefined' --- 这个值未定义;

    2. 'boolean'    --- 这个值是布尔值;

    3. 'string'        --- 这个值是字符串;

    4. 'number'     --- 这个值是数值;

    5. 'object'       --- 这个值是对象或null;

    6. 'function'    --- 这个值是函数。

    三、判断当前窗口是最父级窗口还是放在一个iframe中,并获取这个iframe对象

    if(top!=self){
                var iframe=window.frameElement;
                var iframeId = $(iframe).attr("id");
    }

    这里top就代表顶级窗口对象,self就是当前窗口对象,frameElement就是获取当前所在的iframe对象

  • 相关阅读:
    矩阵快速幂 ZOJ 3497 Mistwald
    线段树(多棵) HDOJ 4288 Coder
    线段树(区间操作) POJ 3325 Help with Intervals
    BestCoder Round #75
    BestCoder Round #74 (div.2)
    DP ZOJ 2745 01-K Code
    Java IO file文件的写入和读取及下载
    Java时间和时间戳的相互转换
    Base64编码密钥时关于换行的几个问题。
    解决IllegalBlockSizeException:last block incomplete in decryption异常
  • 原文地址:https://www.cnblogs.com/flying607/p/5960617.html
Copyright © 2011-2022 走看看