重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
把setTab里的1改为this就可以达到绑定事件一样的效果。我经常在我的函数里只传一个this对象,然后把要传的参数写在这个对象的一个自定义属性上。这样可以传N个参数而不需要修改函数名,这样的兼容性也很好。因为我们有时只要一个参数,有时要两个参数。看下面的例子转换:
创新互联,专注为中小企业提供官网建设、营销型网站制作、响应式网站、展示型成都网站设计、成都网站制作等服务,帮助中小企业通过网站体现价值、有效益。帮助企业快速建站、解决网站建设与网站营销推广问题。
a href="#" onclick="setTab(this)" myid="22" mydata="接收我吧"/a
a href="#" onclick="setTab(this)" myid="33"/a
function setTab(em){
var $this=$(em);
var myid=$this.attr("myid");
var mydata=$this.attr("mydata");
$("a").removeClass("hover");
$this.addClass("hover");
alert("这里就是你要的参数可以传N个参数"+myid+"===="+mydata);
}
function myHandler(event)
{
alert(event.data.foo);
}
$("p").on("click", {foo: "bar"}, myHandler);
{foo:"bar"}就是传递的参数
可以参考jquery api文档 :)
循环生成列表的时候为Button加属性就可以了。
tdinput class="button" type="button" value="按钮名称" myvalue="%=name%"/td
不需要each就可以为每个class=button的按钮添加click事件的
$(".button").click(function(){
var name = $(this).attr("myvalue");
alert(name);
});
jquery简介:
jQuery是一套跨浏览器的JavaScript库,简化HTML与JavaScript之间的操作。由John Resig在2006年1月的BarCamp NYC上发布第一个版本。目前是由 Dave Methvin 领导的开发团队进行开发。全球前10000个访问最高的网站中,有59%使用了jQuery,是目前最受欢迎的JavaScript库。
一、jQuery绑定事件的三种方法
我们这里首先复习一下jQuery绑定事件的三种方法:
target.click(function(){});
target.on("click",function(){});
target.bind("click",function(){});
target.live("click",function(){});
live方法其实是bind方法的变种,其基本功能就同bind方法的功能是一样的,都是为一个元素绑定某个事件,但是bind方法只能给当前存在的元素绑定事件,对于事后采用JS等方式新生成的元素无效,而live方法则正好弥补了bind方法的这个缺陷,它可以对后生成的元素也可以绑定相应的事件。
二、传递参数
1.使用trigger触发事件来进行参数传递
$('p:first').bind('myclick',function(event,arg1,arg2){
$(arg1).appendTo('body');
console.log(arg2);
});
$('input').click(function(){
$('p:first').trigger('myclick',//这里触发了myclick事件
['diva href=""google/a/div','this is to console.log']); //第二个参数 string});
2.使用bind传递参数
var name_value='stonecold';
$('p').bind('click',{name:name_vlaue},function(event){
console.log(event.data.name);//结果在控制台上显示为stonecold});
3.在简单的事件中传递参数
A:首先定义一个函数,在点击的时候触发:
function fn_name(arg1){
$(arg1).appendTo('body');
}
B:定义一个变量作为参数传递
var arg='a href=""googlea';
$('img:first').click(function(){
fn_name(arg);
});
教你如何给
jQuery
on方法绑定的函数传递参数,代码如下:
复制代码
代码如下:
$(".loadingFlower").on("click",'',{name:"123",id:"234",tel:"345"},callback)
function
callback(event){
console.log(event.data.name);
//参数1
=123
console.log(event.data.id);
//参数2
=234
console.log(event.data.tel);
//参数3
=345
}