问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

jquery模拟鼠标点击事件

发布网友 发布时间:2022-04-25 00:42

我来回答

4个回答

懂视网 时间:2022-04-23 11:03

项目过程中会使用到用户触发了一个事件,需要对另外一个元素同样进行触发相应的事件然后执行相应的代码,jquery中就可以通过trigger实现

trigger API

这里写图片描述

今天想了一下,如果没有jq,那用js是怎么实现的呢?最近第二次看《javascript高级程序设计》这边书又有了一些收获。
如果是实现触发click事件,第一印象肯定是直接element.click(); 就可以了,那触发dbclick、mouseleave、focus 、mouseenter等事件是不是也可以直接element.mouseleave()呢?

于是执行了一下发现,报错了!没错并不是简单的加个element.eventType()这样就可以直接触发相应的事件了。

这里写图片描述

于是自然想到到createEvent initEvent dispatchEvent 这些方法了。

// 创建一个事件对象,就好像你绑定事件回调函数里获得的那个事件对象一样var myEvent = document.createEvent('Event')
// 初始化这个事件对象,为它提高需要的“特性”myEvent.initEvent('myEventName', true, true)
// 按照常见的方式绑定对该事件的监听,这里的 element 可以是任何一个元素,你懂的element.addEventListener('myEventName', function(evt) {
 // 这里,evt 就是你创建的事件对象了,不过它会更丰富一些——这些是浏览器为你做的})// 然后这样触发它element.dispatchEvent(myEvent)

直接上代码:(试了下不兼容 <= IE8 )

<!DOCTYPE html><html lang="zh-cmn-Hans"><head>
 <meta charset="utf-8" />
 <title>原生javascript防jquery的trigger触发鼠标事件</title>
 <meta name="author" content="" />
 <style>
 .p{height:40px;width:100px;background:#ccc;}
 </style></head><body>
 <h2>我是H2</h2>
 <p class="p">点击p</p></body></html><script>

 var h2 = document.querySelector("h2"); var p = document.querySelector(".p");

 h2.onclick = function(event){
 var ev = event || window.event;
 console.log(ev.type);
 }

 h2.ondbclick = function(event){
 var ev = event || window.event;
 console.log(ev.type);
 }

 h2.onmouseenter = function(event){
 var ev = event || window.event;
 console.log(ev.type);
 }

 h2.onmouseleave = function(event){
 var ev = event || window.event;
 console.log(ev.type);
 }

 h2.onfocus = function(event){
 var ev = event || window.event;
 console.log(ev.type);
 }

 h2.onblur = function(event){
 var ev = event || window.event;
 console.log(ev.type);
 } //触发事件方法
 function trigger(elem, event){

 var myEvent = document.createEvent('Event') // 初始化这个事件对象,为它提高需要的“特性”
 myEvent.initEvent(event, true, true); //执行事件
 elem.dispatchEvent(myEvent);
 }

 p.onclick = function(){

 trigger(h2, "click"); //触发click事件

 trigger(h2, "dbclick"); //触发dbclick事件

 trigger(h2, "mouseenter"); //触发mouseenter事件

 trigger(h2, "mouseleave"); //触发mouseleave事件

 trigger(h2, "blur"); //触发blur事件

 trigger(h2, "focus"); //触发focus事件

 }</script>

结果如下:

这里写图片描述

(试了下不兼容 <= IE8 ),大神有更好的兼容方法,望多多指点,可以留言分享。

热心网友 时间:2022-04-23 08:11

function test(){
$("[name=userList]:checkbox").click(); //有方法体就是重写,没方法体就是调用。所以,这样。
}
test();
-----------------------------------
<input type="hidden" id='h_input' />
<script>
$("[name=userList]").click(function(){
//多个值的话

var values = "";
$("[name=userList]:checked").each(function(){
values += $(this).val()+"|"; //用 ‘|’ 连接
});
$("#h_input").val(values);
});
</script>

热心网友 时间:2022-04-23 09:29

模拟鼠标单击
请使用trigger()方法
请查jqueryAPI

热心网友 时间:2022-04-23 11:03

第一 你要说清楚点 点击复选框谁给谁传值还是给复选框传值?追问我把复选框的值传到隐藏域中。

追答不好意思 刚才理解错你的意思了 你现在看看这个

$(document).ready(function(){
$("#cc").hide();
$("input").bind("click", function(){
var msg = $(this).val();
$("#cc").show(function(){
var values = "";
$("[name=checkbox]:checked").each(function(){
values += $(this).val()+",";
});
$("#cc").html(values);
});

});
});

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
分手后说过的话精选185句 分手说的精选113句 分手怎么挽回女朋友的句子精选162句 现在工作忙的要死,女朋友因为这跟我分手,我该怎么办? ...任意组成两个不同的两位小数,并把它们改写成以0.001为计数单位... m3/MW▪h怎么换算m3/s▪GW? 交通银行的刷卡金怎么使用呢? 什么时候刷卡金 ...突然前面两条腿好像断了一样 走路前面两腿都无法支撑 吃饭就坐着吃... 王者荣耀:伤害与回复兼备的杨戬,为何不受待见,真废了吗? jQuery鼠标事件总结 平安保险公司考核办法 我是平安保险业务员,每月被部经理扣款早夕会500元,但是基本法上说公司不扣。请问部经理这么做合理吗 从平安保险脱落后保证金为什么会扣几十元呢 投诉平安保险的员工,它们会收到什么处罚 中国平安保险保单回执隔了一个月交业务员会扣分么 谢谢了 平安保险人员违规操作有什么惩罚 平安人寿退保,要扣品质分吗? 平安保险退保扣品质分 谁知道平安保险的品质扣分是什么意思 用六六铃声盗入别人快手原视频,但没水印会不会上热吗? 快手上盗版别人的段子也能热门 为什么我着不能 我从INS上搬运其他人的视频和照片被封了,友人说是盗用了肖像权,可快手上那么多盗用的为什么还再热门 快手为什么上不了热门 为什么我快手就是上不了热门,我盗的一个网红的视频,但是别人盗了就上热门了,而我的就上不了怎么回事? 快手用别人的视频可以上热门吗? 校园里有哪些不文明的现象 校园里有什么事可以写 校园里有哪些生物,动物植物和其他各要20个 学校里学校有什么有什么也有什么词语造句 菠萝炒肉怎么做? jquery能不能指定某一个区域做鼠标双击事件 怎样做菠萝炒肉芡汁 jquery如何在页面加载完成后模拟出一个鼠标点击事件? 现有菠萝肉,想炒一道菜,菠萝炒什么比较好呢?当然要方便一点取得的材料哦:&gt; 炒什么菜放菠萝 jQuery鼠标点击其他元素是什么事件? 高颜值的菠萝红烧肉,在制作时哪些难点需掌握? jquery鼠标点击事件,改变背景色 jquery 鼠标点击事件要求只有第一次才响应 豆腐干炒菠萝好吃吗? 请问咸阳机场哪里有打印行程单的 jquery如何实现鼠标点击事件(如同手风琴效果,但是点击一次被点击的背... jquery 选择器 和 鼠标点击事件问题 携程订的机票能够直接在机场拿行程单吗 jquery中鼠标移上和移开的动作是什么? 携程网上订机票 关于机场自取行程单的问题 jquery on 绑定鼠标点击事件返回点击对象 jquery click事件,点击(不松鼠标)并拖动到区域外之后,无法触发click事件... jquery中如何让鼠标点击事件暂停不响应 等过了1秒后在加载鼠标点击事件...