jQuery传参数
答案:1 悬赏:60 手机版
解决时间 2021-03-23 06:08
- 提问者网友:两耳就是菩提
- 2021-03-22 13:44
jQuery传参数
最佳答案
- 五星知识达人网友:妄饮晩冬酒
- 2021-03-22 14:11
一、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事件
['google','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='google';
$('img:first').click(function(){
fn_name(arg);
});
我们这里首先复习一下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事件
['google','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='google';
$('img:first').click(function(){
fn_name(arg);
});
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯