- 博客(9)
- 资源 (2)
- 收藏
- 关注
原创 简单的订阅者/发布者模式
my loginvar zym={};zym.on=function() {var arg=Array.prototype.slice.call(arguments);var eventType=arg.shift();var callback=arg.shift();this.list || (this.list={});this.list[eve
2016-07-25 01:03:57 1063
原创 js的隐式转换问题
在项目中遇到一个""==0等于true的问题。从而引起对js隐式转换的研究,对于js的运算符两边的变量进行运算时,一般都是把字符串转换成数字类型,比如'2'-1=1,'2'*1=2等等,而为数不多的例外是+运算符,因为加运算符在js中不仅可以作为数字运算,还可以作为字符串运算,而js在转换的时候,把转换为字符串运算作为更高的优先级,比如'2'+1='21'而不是3,而对于""==0这个问题,通过0
2016-07-21 02:31:35 873
原创 浏览器事件之鼠标事件
鼠标事件分为按下鼠标mousedown,放开鼠标mouseup,移动鼠标,鼠标移入(2种:mouseenter,mouseover),鼠标移出(2种:mouseleave,mouseout)按下鼠标时只会触发一次鼠标事件而不是一直触发,放开鼠标也是,但是移动鼠标,鼠标移动事件会一直触发。如果给A元素绑定了mouseenter或者mouseleave,那么鼠标在进入移出该元素的最大范围时会触发相
2016-07-21 02:09:27 2599
原创 document.cookie小记
document.cookie;不断通过设置document.cookie=xxx;可以给cookie不断写入新的值,而不是重新赋值,如果键已经存在原来的cookie中,那么将会更新它的值,如果设置的时间比当前时间小,浏览器就会删除该键对应的信息。这就实现了对cookie的增删改。查询的话就解析cookie对应的字符串就行。
2016-07-20 23:44:07 1543
原创 js中new一个函数的时候,到底发生了什么
function x(){ debugger this.w=1 this.a() } x.prototype={ a:function(){ alert(22) } }
2016-07-20 02:02:04 5907
原创 前端下载和显示图片的方法
php代码img.php$filename = "2.jpg";header('Content-Type:image/gif'); header('Content-Disposition: attachment; filename="'.$filename.'"'); header('Content-Length:'.filesize($filename)); readfi
2016-07-19 01:28:07 4063
原创 利用window.open实现阻止图片下载
最近的项目有个需要是,在页面中有个链接,点击后在新页面打开一个图片,这本来是很容易的事情,但是问题在于公司的图片资源统一储存在一个服务器中的,而且返回的数据中设置了Content-Disposition: attachment; filename="xxx.jpg"头,服务器可能是在web服务器设置了这个头,或者是在应用服务器代码里设置的,下面利用php模拟这个过程,如果我这样写:xxx,不设置C
2016-07-19 01:20:13 6636 2
原创 window.name做跨域应用
跨域的方法很多,不一一列举,今晚尝试了一下window.name这种方法,条件是a域名想拿到b域名的数据,并且a,b完全不同域,也就是不能通过设置document.domain来拿数据。像我们项目的前端后端代码不是放在一个服务器的,但是在一个子域名下,所以可以通过设置domain解决跨域问题,所以现在针对另一种情况进行实践。直接看代码。前端代码:
2016-07-14 00:22:42 851
原创 js的中for in
for in 可以用来枚举对象,默认行为是会枚举对象自己和原型链上所有可枚举的属性。所以一般要用Object.hasOwnProperty进行过滤。通过Object.getOwnPropertyDescriptor(对象,属性)可得到对象属性的描述符,enumerable:为true的会打印出来。所以把他过滤掉var a=[1, 2, 3, 4, 5, 6];Object.getO
2016-07-12 02:45:22 346
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人