一个outerclick解决方案,看jquery里面的one,事件,和特效
来源:互联网 发布:淘宝美工招聘 编辑:程序博客网 时间:2024/05/22 00:23
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> <title></title> <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script> <style> #temLoadDiv { display:none;z-index:99;position:absolute;background-color:Red; } </style> <script> var tipwindows = function (e) { //生成容器全局变更 if (window.temLoadDiv == null) { window.temLoadDiv = $("<div id='temLoadDiv'></div>"); window.temLoadDiv.appendTo($("body")); } //因为是通过bind绑定事件,所以我们只能这样取参数 var htmlstr = arguments[0].data.htmlstr; var eventsrc = arguments[0].data.eventsrc; //获取事件源 var a = e.target; //事件源是不是触发按纽,是不是容器本事,是不是在容器里面,这里的find方法是查找一个元素是否包含另一个元素 //jq1.4不支持,1.7支持 if (eventsrc[0] == a || $("#temLoadDiv")[0] == a || $("#temLoadDiv").find(a)[0]) { //如果事件源在内部,给document加一个click事件监听 //用one方法,只执行一次,下次事件源还在容器内,就再加一次监听,如果不在,容器隐藏,并且document也不会有onclick事件监听 //注意,要先判断事件源,再innerHTML,如果先innerHTML,如果事件源在容器内,容器的内容又发生改变,那事件源会被冲掉,无法判定事件源是否在容器内了 $(document).one("click", arguments[0].data, tipwindows); //赋内容,定位 window.temLoadDiv.html(htmlstr); var temoffset = eventsrc.offset(); window.temLoadDiv.css('left', temoffset.left + 20); window.temLoadDiv.css('top', temoffset.top + 20);//下拉特效 window.temLoadDiv.slideDown(); } else { //事件源在外部,淡出效果 $("#temLoadDiv").fadeOut(); } } $(function () { $("#aa").bind("click", { htmlstr: "的原理选择器1111 且与或<br /><div id='kk2'>dddddddddd</div><br />kkkk", eventsrc: $("#aa") }, tipwindows); }); </script></head><body><div id="aa" >dfdfdf</div></body></html>
题外话
一直想找jq里面的window.event,发现没有,是因为event作为全局变量,只在IE里面有,其它浏览器就是在方法里,作为一个默认参数,所以
我们一般不会在其它的浏览器写
onclick="a(a,b,c)"
这种形式,因为不容易拿到event,所以我们用bind
- 一个outerclick解决方案,看jquery里面的one,事件,和特效
- jQuery one 特定事件绑定一个一次性的事件
- jQuery的事件one
- jQuery的一个特效
- 【JQuery】一个DOM元素,多次绑定同一事件的解决方案
- jQuery 只执行一次的事件 one
- jQuery高级事件---on、off、one和事件委托
- jQuery 事件 - one() 方法
- jQuery one事件
- JQuery 里面的 click 事件会累加
- JQuery 里面的 click 事件会累加
- JQuery 里面的 click 事件会累加
- [Jquery]自动选取焦点和one绑定事件
- jQuery中的事件冒泡和解决方案
- jquery弹出层的显示特效和消除特效
- jquery常用事件及特效
- JQuery的一种特效:展开和收缩
- 最新收集的JS和JQuery特效
- 第八周-学习字符加密
- java swing定制jbutton 圆角显示
- 物是人非的伤感日志:你回头,对方已不再等待
- 用libxml2操作xml文档的例子
- MATLAB帮助文档_MATLAB产品_MATLAB Products
- 一个outerclick解决方案,看jquery里面的one,事件,和特效
- 变量替换与扩展
- MySQL单机多实例配置
- 用下流的姿态枪毙了爱情:伤感日志
- 通过ComBox查询属性表中的数据
- MATLAB帮助文档_工具箱_Toolboxes
- 基于主成分的图像处理
- googlemap 安装到手机上!!!!
- UML 用例图