您的位置:

js选中事件,js下拉框选中事件

本文目录一览:

汇总js事件相关及事件处理模型

js事件是为了实现用户交互,比如当用户鼠标点击或者键盘输入时,浏览器会监听截获并且通知js做出反馈执行相应的函数,实现交互。

js的事件类型有很多,我们先来大概总结一下常用的JS事件

click点击事件、mousedown鼠标按下事件、mousemove鼠标移动事件、mouseup鼠标抬起事件

contextmenu右键出菜单事件、mouseenter/mouseover鼠标进入事件、mouserleave/mouseout鼠标离开事件

可通过事件对象的button属性来区分是左键\滚轮\右键,分别对应值 0 / 1 / 2

DOM3规定:click事件只能监听左键;只能通过mousedown和mouseup来判断鼠标键

keydown某键被按下时、keyup被松开时、keypress按下并且松开时

触发顺序:先 keydown,然后keypress,最后keyup

keydown和keypress的区别:

input:文本变化时触发

change:聚焦或失去焦点时判断状态是否改变,发生改变是触发change事件

focus:聚焦时触发

blur:失去焦点时触发

利用focus和blur可模拟placeholder

scroll:滚动条滚动时

load:页面加载完触发

abort:图像的加载失败

dblclick:双击事件

error:当加载图像和文档时发生错误

resize:窗口或者框架被重新调整大小

select:文本被选中时

reset:点击重置按钮时

submit:点击提交按钮时

接着看如何给DOM元素绑定事件处理函数

兼容性很好

但是根据js的特点,这种赋值的方式肯定会被后面的值覆盖。因此这种方式绑定事件处理函数规则是:同一个元素同一个事件只能绑定一个处理函数。等同于第一种写在行间。

IE8及以下不兼容

通过addEventListener绑定的方式,同个元素的同一个事件可以绑定多个处理函数,不会被覆盖。

attachEvent跟addEventListener 基本一致,也是同一个元素的同一个事件可以绑定多个处理函数,不会被覆盖。不同的是attachEvent可以绑定的函数是可以重复的,即即使绑定同一个函数都不会不覆盖。

以上几种事件绑定方式里面的this指向有点区别:

也比较好理解,IE独有的特殊一点指向window,其他都指向dom元素本身

封装一个兼容性的方法,用于绑定事件:

有的时候我们希望解除事件处理函数,那怎么办呢?

其实解除事件处理函数也对应有办法方法:

1. ele.onxxx = false / ' ' / null

2. ele.removeEventListener(type,fnName,false)

3. ele.attachEvent('on' + type,fnName)

值得注意的是:若干绑定的事件处理函数是匿名函数,则无法解除绑定!

不知道有没有发现,在上面绑定事件处理函数的时候,处理函数有个参数e或者叫event,其实是一个事件对象

事件对象就是处理函数里面的一个参数,说白了就是浏览器打包好的一个对象自动传入到处理函数的第一个参数中。

为了兼容IE一般这么写: e = e || window.event

事件对象会有个属性target,这个target叫事件源对象,记录可事件具体在谁身上触发的那个源头

同样IE上事件源对象是e.srcElement,谷歌两个都有

所以为了兼容IE一般获取事件源对象是这么来写:

当浏览器发展到第四代时(IE4及Netscape4),浏览器开发团队遇到了一个很有意思的问题:页面的哪一部分会拥有某个特定的事件?想象画在一张纸上的一组同心圆。如果把手指放在圆心上,那么手指指向的不是一个圆,而是纸上的所有圆

两家公司的浏览器开发团队在看待浏览器事件方面还是一致的。如果单击了某个按钮,他们都认为单击事件不仅仅发生在按钮上,甚至也单击了整个页面

但有意思的是,IE和Netscape开发团队居然提出了差不多是完全相反的事件流的概念。IE的事件流是事件冒泡流,而Netscape的事件流是事件捕获流。事件冒泡和事件捕获称为两种事件处理模型

IE的事件流叫做事件冒泡(event bubbling), 事件冒泡是结构上(非视觉上)嵌套的函数存在事件冒泡功能,即同一事件自子元素冒泡向父元素(自底向上)

[注意]所有现代浏览器都支持事件冒泡

但在具体实现在还是有一些差别。IE9、Firefox、Chrome、Safari将事件一直冒泡到window对象

而事件捕获的思想是不太具体的节点应该更早接收到事件,而最具体的节点应该最后接收到事件。事件捕获的用意在于在事件到达预定目标之前就捕获它

即事件捕获是指: 结构上(非视觉上)嵌套的元素存在事件捕获功能,即同一事件自父元素冒泡向子元素(自顶向下)

注意IE上没有事件捕获,Chrome和新版本的Firefox等都实现了

一个dom元素的一个事件类型绑定的一个处理函数只能存在一种事件模型,要么事件冒泡要么事件捕获。正常的通过addEventListener(type,fn,false)绑定事件时,最后一个参数默认是false表示的是,事件冒泡模型。如果改成true,立即变成事件捕获模型

如果一个dom元素的一个事件类型绑定了两个处理函数,两个函数的事件处理模型一个是事件冒泡一个是事件捕获,触发顺序是先捕获,后冒泡。

focus、blur、change、submit、reset、select等事件类型不冒泡

可以 利用事件冒泡和事件源对象可以叫事件委托给父元素

利用事件冒泡和事件源对象进行处理

优点:

性能好,不需要循环所有元素一个个绑定事件

灵活,当有其他新的子元素时,不需要重新绑定事件。

有的时候,我们不希望有冒泡功能,那我们怎么取消事件冒泡呢?

封装一个都好使的取消冒泡函数

有的时候我们需要阻止一些浏览器默认的事件

比如:表单提交、a链接跳转、右键菜单等

有几种方式:

参考资料:

DOM事件流的三个阶段

深入理解DOM事件机制系列第一篇——事件流

JS事件汇总

JS事件模型

事件1(上)

事件1(下)

DOM级别与DOM事件

DOM事件机制解惑

事件模型

JavaScript 事件委托详解

JavaScript 事件的学与记:stopPropagation 和 stopImmediatePropagation

event.target和event.currentTarget的区别

js怎么区分出点击的是鼠标左键还是右键?

js动态生成的checkbox取值和选中事件

script type="text/javascript"

window.onload = function() {

// 创建 input 元素

var checkbox = document.createElement("input");

checkbox.type = "checkbox";

checkbox.value = "123";

// 页面添加 checkbox

document.body.appendChild(checkbox);

// 点击

checkbox.onclick = function() {

if(this.checked) {

alert("选中");

}

else {

alert("未选中");

}

alert("value: " + this.value);

}

};

/script

js,监听窗口被选中事件

可以给窗口增加获得焦点事件就好啦。

window.onfocus=function(){// your code here)}

如何用js实现将当前点击的单选按钮变为选中状态?

代码如下:

function doGender(gender) {

if (gender == "男") {

gel("radionan").checked = true;

} else {

gel("radionv").checked = true;

}

}

扩展资料

JS基础代码:

//定义数组

var pageIds = new Array();

pageIds.push('A');

数组长度

pageIds.length;

//shift:删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined

var a = [1,2,3,4,5];

var b = a.shift(); //a:[2,3,4,5] b:1

//unshift:将参数添加到原数组开头,并返回数组的长度

var a = [1,2,3,4,5];

var b = a.unshift(-2,-1); //a:[-2,-1,1,2,3,4,5] b:7

//注:在IE6.0下测试返回值总为undefined,FF2.0下测试返回值为7,所以这个方法的返回值不可靠,需要用返回值时可用splice代替本方法来使用。

js 怎么实现select选中触发事件?

方法:

可以使用jQuery的trigger() 方法来响应事件。

定义和用法:

trigger() 方法触发被选元素的指定事件类型。

语法:

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

参数描述:

event    必需。规定指定元素要触发的事件。可以使自定义事件(使用 bind() 函数来附加),或者任何标准事件。   

[param1,param2,...]    可选。传递到事件处理程序的额外参数。额外的参数对自定义事件特别有用。

实例:

触发 select元素的change事件:

$("button").click(function(){

$("select").trigger("change");

});

js选中事件,js下拉框选中事件

2023-01-03
js选中事件,js选择框改变事件

2023-01-07
js选择文件事件,js选中文本事件

本文目录一览: 1、file控件选择上传文件确定后触发的js事件是哪个? 2、file控件选择上传文件确定后触发什么js事件 3、js中如何点击一个按钮弹出一个file文件框 4、javascript

2023-12-08
js事件中change,js事件中监听其他事件

本文目录一览: 1、js中的change事件不起作用 2、js中关于change的问题 3、这段JS代码为什么change事件中先删除上一次事件创建的option删不干净,会剩下一个城市 4、汇总js

2023-12-08
js下拉框选择年月日代码(js日期选择框)

本文目录一览: 1、根据当前时间显示下拉列表的年月,需要显示之前六个月,用JS怎么来弄? 2、js实现下拉选项默认为当前年月 3、如何用js设置select为当前年月 4、js日期下拉框怎么写 根据当

2023-12-08
HTML下拉框选择事件详解

2023-05-18
探究JS焦点事件

2023-05-19
js层级选择框样式(JS选择框)

本文目录一览: 1、如何用JS选中下拉框选项 2、js层次选择器div+one 这个+号代表什么 3、jQuery层次选择器用法示例 4、用js怎么设置单元格的边框 5、如何用js实现select下拉

2023-12-08
java选择菜单项事件,java单选框选中事件

2022-11-17
Layui复选框被选中事件详解

2023-05-20
js选择框样式(css选择框样式)

本文目录一览: 1、javascript 选择单选框 2、js如何创建那个日期选择框啊 3、js怎么设置select的样式,边框和三角的颜色 4、如何通过js实现勾选复选框 5、js使用DOM设置单选

2023-12-08
js网页中的事件有哪些(js常见事件)

本文目录一览: 1、js中常用的事件有哪些 2、JavaScript中都有些什么事件?事件有什么作用? 3、js 触发事件种类类型有哪些 js中常用的事件有哪些 最常用的就是onclick咯, 鼠标点

2023-12-08
chrome截获js事件,js捕获事件

本文目录一览: 1、在Chrome中怎么用JS获取关闭选项卡事件? 2、chrome 怎么获取js文件 3、JS捕获关闭浏览器事件之chrome浏览器真支持onbeforeunload事件吗? 在Ch

2023-12-08
Layui Checkbox选中触发事件详解

2023-05-16
点击下拉内容js代码,点击下拉内容js代码没反应

本文目录一览: 1、如何用js取下拉框中的内容 2、用js怎样获得下拉框的值? 3、JS组件Bootstrap实现下拉菜单效果代码 4、js怎么添加一个下拉列表的值 5、谁内给我讲一将如下 下拉菜单的

2023-12-08
jQuery下拉框改变事件详解

2023-05-18
js的事件处理丶java教程网(js中事件)

本文目录一览: 1、关于js事件捕获的用法 2、JS中事件的调用 3、请简单说明javascript中处理事件的步骤 4、java中js的事件使用---$("p").style("background

2023-12-08
js窗口close事件(js弹出窗口关闭事件)

本文目录一览: 1、js有关闭窗口时的事件吗 2、怎样用JS实现关闭当前窗口 3、javascript有没有纯粹的window.onclose事件 js有关闭窗口时的事件吗 javascript捕获窗

2023-12-08
js插件chosen(js插件开发)

本文目录一览: 1、jquery.chosen.js 在模糊搜索的时候,只能够匹配以相同 字符开头的 选项,现在我想要匹配所有项目,譬如 2、jquery chosen这个插件,怎么样才能让下拉框向上

2023-12-08
小程序js添加单选框选中(js设置单选框选中)

本文目录一览: 1、用javascript设置单选按钮 radio 为必填...... 2、微信小程序里怎么控制两个只能选择一个的? 3、小程序怎么获取 多组 单选按钮选中的值? 用javascrip

2023-12-08