以转发微博为例:
<a event-args="sid=1&stable=weiba_post&curtable=feed&curid=1&initHTML=&appname=weiba&cancomment=1&feedtype=weiba_post" href="javascript:void(0)" event-node="share">转发到微博</a>
点击时,在控制台可以看到发送了一个请求ajax
请求,而请求的地址也是根据上面a
链接里面的event-args
和event-node
所决定的。
是如何触发的我暂时还没完全弄明白,但是不是使用的jquery的选择器来做的事件绑定。
分享事件监听运行的流程和稍微具体点的分析:http://zhoumengkang.com/299.html
#请求的地址 http://zhoumengkang.com/index.php?app=public&mod=Share&act=index&sid=1&stable=weiba_post&curid=1&curtable=feed&appname=weiba&initHTML=&cancomment=1&is_repost=undefined&_=1406526320169
点击之后,在整个dom
文档最前面添加弹窗(css
样式就不写了)
<div class="wrap-layer ui-draggable" id="tsbox" style="left: 719px; top: 146px;"></div>
在整个dom
文档最后面添加背景层
<div class="boxy-modal-blackout" style="height: 1770px; width: 1903px; z-index: 999; opacity: 0.5;"> <iframe style="z-index:-1;position: absolute;visibility:inherit;width:1903px;height:1770px;top:0;left:0;filter='progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)'" src="about:blank" border="0" frameborder="0"></iframe> </div>
关于为什么背景层里面要添加<iframe>
呢?这个主要是为了兼容IE6
,因为在IE6下面无法遮盖住select
元素