jQuery异步加载数据并添加事件示例

几个月前在一个项目中涉及到树形栏,然后看了很多插件,觉得有点麻烦,于是自己写了一个,写着写着就出问题了。

当时项目是通过树形栏进行权限控制的,管理员可以对从数据库去的数据动态生成树形栏进行增删改查操作,可是用$(".XX").click();方法是不行的。

1、之前用的是jq1.4.3 ,jq1.7一下都可以使用live()方法,来实现该功能

$(‘#div').live(‘click',function(){
//do stuff
});

但是live方法也有不支持的事件,例如:toggle事件 ,遇到这个情况可以给他加个click事件,之后再来个模拟点击trigger事件就ok了

$('a').live('click',function(){
$(this).toggle(function(){

   alert("q11");
//
   alert($(this).attr("id"));
   $(this).parent().children('ul').show();
},function(){
  $(this).parent().children('ul').hide();
});
$(this).trigger('click');
/**
之前绑定的click事件,只有点击了才会触发toggle事件,所以就给他加上模拟点击事件,不需要点击直接出发
**/
});

2、jq1.7以上的就用on方法了,第一个属性为事件,第二个是 选择器,第三个是 执行的方法

$(document).on("click","#d1",function(){
alert("bbbbb");
});

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
今天又回顾了一下这个插件,然后发现它在IE6下面工作的时候,显示起来是不正常的,tip经常出现在很离谱的位置。问题还有,由于tip的显示效果没有用到任何图像,都是纯的CSS,所以里面用CSS实现的三角形在IE6下是无法工作的,会显示一块有色区域,很丑,所以我就想动手改它一下。先上一张对比图好了: js方面的代码肯定是没问题的,问题出CSS上,Colortip用的是position进行定位,在IE6下面可能存在着一点问题。而且由于IE6不支持border-color:transparent的属性,所以tip下
原文作者: Andy Croxall 原文链接: Ten Oddities And Secrets About JavaScript 翻译编辑: 张鑫旭 数据类型和定义 1. Null是个对象 JavaScript众多类型中有个Null类型,它有个唯一的值null, 即它的字面量,定义为完全没有任何意义的值。其表现得像个对象,如下检测代码: 复制代码 代码如下: alert(typeof null); //弹出 'object' 如下截图: 尽管typeof值显示是"object",但null并不认为是一
一个合作伙伴的页面效果,鼠标放到 图片上要变成彩色,本来就是一个简单的换色效果,但问题是,图片的高度和宽度不是一样大的。 这就比较麻烦了。如果把图片放到背景里就要一个一个的去定义图片外面的容器a/a,要多写很多层叠样式,太麻烦,最后我决定,把图片的高度的一一半,和图片的宽度赋值给它外面的容器a/a 然后把图片做了如下处理: 当鼠标移动到图片上让他向上移动30个像素,移开则回到原位。 html代码如下: 复制代码 代码如下: !--partner_box-- div class="partner_box"
方法说明: 结束响应,告诉客户端所有消息已经发送。当所有要返回的内容发送完毕时,该函数必须被调用一次。 如何不调用该函数,客户端将永远处于等待状态。 语法: 复制代码 代码如下: response.end([data], [encoding]) 接收参数: data end()执行完毕后要输出的字符,如果指定了 data 的值,那就意味着在执行完 response.end() 之后,会接着执行一条 response.write(data , encoding); encoding 对应data的字符编码
我们大多数人都使用过JavaScript,近年来随着各种JavaScript框架的流行使得JavaScript变得更加神奇和容易。"Anonymous (匿名)函数?不知道那是什么但是看起来和自己所写的差不多。” 你可能并不知道可以传给 new Function() 一个字符串作为函数的body来构造一个 JavaScript函数。编程中并不经常用到,但有时候应该是很有用的. 下面是 new Function 的基本用法: 复制代码 代码如下: // 最后一个参数是函数的 body(函数体),类型为 st
setAdminTabs.js代码中添加如下: 复制代码 代码如下: $("#adminTabs li").mouseover(function(){$(this).addClass("selectedTab")}); 始终不起作用,原因如下: 复制代码 代码如下: .selectedTab{background-color:White; border-bottom:1px} 定义两个属性,在admin.css的文件中存在,如下: 复制代码 代码如下: #adminTabs ul li{ float:lef
前台: 复制代码 代码如下: function SelectProject() { var a = new Array; var r = window.showModalDialog('SelProject.aspx', a, "dialogWidth=1000px; dialogHeight=600px; resizable: yes"); if (typeof (r) != 'undefined') { var arr = r.split(";"); $("#hidProjectInnerID").va
HTML处理 stripTags | escapeHTML | unescapeHTML JSON处理 unfilterJSON | isJSON | evalJSON | parseJSON 脚本处理 stripScripts | extractScripts | evalScripts 现在,String部分转入具体的关联应用,分别对应 HTML字符串,JSON字符串和HTML中的脚本字符串。 【乱入一句,有关JSON的一点东西,可以看看http://www.cnblogs.com/TomXu/arc
本文实例讲述了使用jQueryMobile实现滑动翻页效果的方法。分享给大家供大家参考。具体分析如下: jQuery Mobile是jQuery 在手机上和平板设备上的版本。jQuery Mobile 不仅会给主流移动平台带来jQuery核心库,而且会发布一个完整统一的jQuery移动UI框架。支持全球主流的移动平台。就是能够迅速能把页面写成APP的界面,让用户浏览网页,相当于在使用布局好的app一样。 首先要在jQueryMobile( 点击此处本站下载 )下载一个压缩包,然后把这个压缩包的所有内容拉到
随机抽取,简单代码。 复制代码 代码如下: html title随机抽奖程序/title headmeta http-equiv=Content-Type content="text/html; charset=gb2312" /head body script type="text/javascript" var alldata = "a,b,c,d,e" var alldataarr = alldata.split(","); var num = alldataarr.length-1 ; var t