发发关于JavaScript的感慨,随手记几个js知识碎片
2024-08-27 02:27:27
最近一段时间写了很多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对象
最新文章
- [转]Informatica vs SSIS
- vs2012 编译运行报 项目程序包Dsp.Bds.dll还原失败,找不到版本xxxxxx的程序包问题的解决方法
- python使用装饰器捕获异常
- DP 子序列问题
- JAVA编程规则
- PAT-乙级-1032. 挖掘机技术哪家强(20)
- 微信JS-SDK 接口调用与 php 遇到的坑
- 读一读Scktsrvr.exe的源程序
- wealoha thrift-client-pool 总结
- 【数论&#183;错位排列】bzoj4517 排列计数
- [LeetCode] Shortest Unsorted Continuous Subarray 最短无序连续子数组
- [UE4]抛物线指示器
- STM32F401 外部中断误触发问题
- C#实现的系统内存清理
- sqlserver乱码问题解决
- numpy中 array数组的shape属性
- [Node.js] 08 - Web Server and REST API
- RAC手动中断订阅
- ubuntu 12.04下编译安装nginx-1.9.3
- [LeetCode] 331. Verify Preorder Serialization of a Binary Tree_Medium tag: stack