在网页的制作过程中,有时候需要模拟用户的操作去实现一些事件的触发,就比如说网页在加载完毕后就要弹出一个窗口,或是网页加载完后需要某的元素的点击事件进行操作,我闪该如何操作呢

jQuery中的trigger()方法解释

trigger():该方法可以触发某个元素的事件,也可以触发自定义的事件名称

语法:

$(selector).trigger(event,[param1,param2,...])

注:

event:为要触发的事件

[param1,param2,...]:为要触发函数的传递值,以数组的形式传递

我们来举个例

利用JQ的trigger()触发一个事件

利用JQ的trigger()触发一个事件

HTML代码

<p>飞鸟慕鱼博客欢迎您!</p>
<button id='button'>点我测试</button>
<!--飞鸟慕鱼博客-->

JQ代码

$("#button").click(function(){
    $("p").toggle();
});
$("p").click(function(){
    $("#button").trigger("click");
});

结果:

我们点击P标签,也会触发button的事件,来隐藏P标签

再来一个例子

利用trigger()方法来触发一个事件,并带有传入值

利用trigger()方法来触发一个事件,并带有传入值

HTML代码

<p>飞鸟慕鱼博客欢迎您!</p>
<button id='button'>测试1</button>
<button id='button2'>测试2</button>

JQ代码

$("#button").click(function(event,n,m){
//二种判断变量是否被赋值
//typeof n === 'undefined'
//@飞鸟慕鱼博客
    if(n === undefined ){
        $("p").text("欢迎访问");
    }else{               
        $("p").text("欢迎" + n + "访问" + m);
    }         
});
$("#button2").click(function(){
    $("#button").trigger("click",["墨初","飞鸟慕鱼博客"]);
});

结果:

点击测试1按钮,会输出“欢迎访问”

点击测试2按钮,会输出“欢迎墨初访问飞鸟慕鱼博客”